Moodle开发人员文档MCP服务器
一个模型上下文协议(MCP)服务器,提供对Moodle开发人员文档的无缝访问 模拟.io此服务器使AI助手和其他MCP客户端能够搜索、浏览和检索具有特定版本支持的Moodle开发文档。
](https://badge.fury.io/py/moodle_dev_mcp) ](https://pypi.org/project/moodle_dev_mcp/) 
特性
- 🔍 搜索文档:使用智能过滤在Moodle开发人员文档中搜索
- 📚 版本支持:访问多个Moodle版本(4.1、4.2、5.0等)的文档
- 🗂️ API结构:浏览和浏览Moodle的API文档结构
- 📄 页面抓取:从特定文档页面检索完整内容
- ⚡ 异步性能:内置async/await以实现高效的并发操作
- 🔧 MCP兼容:适用于任何兼容MCP的客户端(Claude Desktop等)
安装
先决条件
- Python 3.8或更高版本
- pip(Python包安装程序)
从PyPI安装
安装Moodle开发者文档MCP服务器的最简单方法是通过PyPI:
pip install moodle_dev_mcp用于开发或特定环境
如果您在虚拟环境中工作(推荐):
# Create a virtual environment
python -m venv moodle_mcp_env
# Activate the virtual environment
# On Windows:
moodle_mcp_env\Scripts\activate
# On macOS/Linux:
source moodle_mcp_env/bin/activate
# Install the package
pip install moodle_dev_mcp使用UV安装(建议更快安装)
如果你有 紫外线 安装:
uv pip install moodle_dev_mcp验证安装
安装后,请验证服务器是否已正确安装:
python -c "import moodle_dev_mcp; print('Installation successful!')"或者直接测试服务器:
python -m moodle_dev_mcp配置
Claude桌面集成
要将此MCP服务器与Claude Desktop一起使用,请将以下配置添加到您的Claude Desktop配置文件中:
配置文件的位置:
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json - 视窗:
%APPDATA%\Claude\claude_desktop_config.json
配置:
{
"mcpServers": {
"moodle_dev_docs": {
"command": "python",
"args": ["-m", "moodle_dev_mcp"],
"env": {}
}
}
}如果您安装在虚拟环境中,请使用Python可执行文件的完整路径:
{
"mcpServers": {
"moodle_dev_docs": {
"command": "/path/to/your/venv/bin/python",
"args": ["-m", "moodle_dev_mcp"],
"env": {}
}
}
}其他MCP客户端
对于其他MCP客户端,使用以下命令启动服务器:
python -m moodle_dev_mcp可用工具
服务器提供以下可供MCP客户端使用的工具:
1. get_versions
在开发人员文档中获取可用Moodle版本的列表。
参数: 无
示例用法:
Get available Moodle versions2. search_docs
在Moodle开发人员文档中搜索特定主题或API。
参数:
query(必需):搜索查询(如“数据库API”、“插件开发”)version(可选):要搜索的特定Moodle版本limit(可选):最大结果数(默认值:10)
示例用法:
Search for "plugin development" in Moodle documentation
Search for "database API" in version 4.2 with limit 53. get_api_structure
获取特定Moodle版本的API文档结构。
参数:
version(可选):Moodle版本(默认为最新版本)
示例用法:
Get API structure for Moodle 4.2
Get latest API structure4. fetch_page
获取特定Moodle开发人员文档页面的完整内容。
参数:
url(必填):文档页面的完整URL
示例用法:
Fetch content from https://moodledev.io/docs/apis/plugintypes/mod使用示例
一旦配置了MCP客户端,您就可以使用自然语言与Moodle文档进行交互:
基本搜索
- “搜索插件开发最佳实践”
- “查找有关数据库API的文档”
- “在Moodle中查找身份验证方法”
版本特定查询
- “获取Moodle 4.2的API文档”
- “搜索5.0版本中的web服务”
- “显示最新版本的插件结构”
详细内容检索
- “获取完整的插件开发指南”
- “获取数据库API文档的全部内容”
发展
开发安装
对于开发,克隆存储库并在开发模式下安装:
git clone https://github.com/khairu-aqsara/moodle_dev_mcp.git
cd moodle_dev_mcp
# Install in development mode
pip install -e .
# Or with development dependencies
pip install -e ".[dev]"依赖项
- Python 3.8+
- 主控程序:模型上下文协议实现
- 意图tp:用于web请求的异步HTTP客户端
- 美容组4:HTML解析和内容提取
测试
使用以下工具运行测试:
pytest故障排除
常见安装问题
- 权限错误:使用
pip install --user moodle_dev_mcp如果您遇到权限问题 - Python版本确保你使用的是Python 3.8或更高版本:
python --version - 虚拟环境:考虑使用虚拟环境来避免冲突
运行时问题
- 网络连接:确保您可以访问moodledev.io的互联网
- 超时错误:服务器包含内置的重试逻辑,但非常慢的连接可能会超时
- 速率限制:服务器遵守速率限制,并包括适当的延迟
调试模式
通过设置环境变量启用调试日志记录:
export PYTHONPATH=.
python -c "import logging; logging.basicConfig(level=logging.DEBUG)" -m moodle_dev_mcp贡献
欢迎投稿!请随时提交拉取请求。对于重大更改,请先打开一个问题来讨论您想要更改的内容。
开发设置
- 分叉存储库
- 创建要素分支(
git checkout -b feature/amazing-feature) - 进行更改
- 运行测试(
pytest) - 提交您的更改(
git commit -m 'Add amazing feature') - 推到分支(
git push origin feature/amazing-feature) - 打开拉取请求
许可证
此项目根据MIT许可证获得许可-请参阅 许可证 文件以获取详细信息。
支持
- 问题:
- 讨论:
- 电子邮件: wenkhairu@gmail.com
致谢
- 建立在 模型上下文协议 通过Anthropic
- 文件来源于 Moodle开发人员资源
- 感谢Moodle开发社区提供全面的文档
______________________________________________________________________
备注:这是一个非官方工具,与Moodle总部无关。它旨在通过现代人工智能工具使Moodle开发人员文档更易于访问。
