一个MCP(模型上下文协议)服务器,使LLMs能够与Moodle平台交互以管理课程、学生、作业和测验。
list_students - 获取课程中注册的学生列表
get_assignments - 获取课程中的所有可用作业
get_student_submissions - 检查特定作业的学生提交情况
provide_assignment_feedback - 为学生的作业提交提供评分和评论
get_quizzes - 获取课程中的所有可用测验
get_quiz_attempts - 检查特定测验的学生尝试情况provide_quiz_feedback - 为测验尝试提供评论
git clone https://github.com/your-username/moodle-mcp-server.git
cd moodle-mcp-server
npm install
.env文件:MOODLE_API_URL=https://your-moodle.com/webservice/rest/server.php
MOODLE_API_TOKEN=your_api_token
MOODLE_COURSE_ID=1 # 替换为您的课程ID
npm run build
要在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服务器通过标准I/O进行通信,这可能使得调试具有挑战性。我们建议使用MCP Inspector:
npm run inspector
Inspector将提供一个URL,以便您可以在浏览器中访问调试工具。
.env文件中.env文件或Moodle API令牌