MCP服务器教育平台

一个基于Django和Claude AI的教育网站,提供MCP服务器的结构化学习路径、交互式实验室和自动更新内容。

  • by gmjadeja
  • Python
  • 本地部署
  • 更新于
在 GitHub 查看 gmjadeja/mcp_server

使用说明

MCP服务器教育网站

一个用于教授MCP(模型上下文协议)服务器的教育网络应用程序。使用Django构建,并使用Claude AI自动更新。

特性

  • 综合课程:MCP服务器的结构化学习路径
  • 互动实验室:动手练习和编码挑战
  • 学习路径:在Claude支持或自定义MCP服务器开发之间进行选择
  • 自动更新:使用Claude AI,内容会自动更新为最新的MCP信息
  • 现代用户界面:采用Tailwind CSS的美丽、灵敏的设计

需求

  • Python 3.10+
  • Django 5.2.7+
  • Anthropic API密钥(用于Claude集成)

安装

  1. 克隆存储库:
git clone https://github.com/gmjadeja/mcp_server.git
cd mcp_server
  1. 创建虚拟环境:
python -m venv venv
source venv/bin/activate  # On Windows: venv\Scripts\activate
  1. 安装依赖项:
pip install -r requirements.txt
  1. 创建一个 .env 项目根目录中的文件:
DEBUG=True
SECRET_KEY=your-secret-key-here
ANTHROPIC_API_KEY=your-anthropic-api-key-here
  1. 运行迁移:
python manage.py migrate
  1. 创建超级用户:
python manage.py createsuperuser
  1. 运行开发服务器:
python manage.py runserver

使用Claude自动更新内容

该网站包括使用Claude AI的自动内容更新。要更新内容:

更新具体内容:

python manage.py update_content --type course --id 1
python manage.py update_content --type lesson --id 1
python manage.py update_content --type lab --id 1

更新所有超过X天的内容:

python manage.py update_content --all --days 7

内容更新被创建为“待定”,可以在Django管理中进行审查和批准。

设置计划更新

要自动更新内容,请设置cron作业或计划任务:

Linux/Mac(cron):

# Update content weekly
0 2 * * 0 cd /path/to/project && source venv/bin/activate && python manage.py update_content --all --days 7

Windows(任务计划程序):

创建一个执行以下操作的计划任务:

cd C:\path\to\project
venv\Scripts\activate
python manage.py update_content --all --days 7

部署

使用轻量级Web服务器(Gunicorn)

  1. 安装Gunicorn:
pip install gunicorn
  1. 与Gunicorn一起跑步:
gunicorn demo_site.wsgi:application --bind 0.0.0.0:8000

生产设置

确保:

  • 集 DEBUG=False 生产中
  • 使用合适的数据库(PostgreSQL推荐)
  • 设置适当的静态文件服务
  • 正确配置ALLOWED_HOSTS
  • 对敏感数据使用环境变量

项目结构

demo_site/
├── demo_site/          # Django project settings
├── hello/              # Main app
│   ├── models.py       # Course, Lesson, Lab models
│   ├── views.py        # View functions
│   ├── services/       # Claude API service
│   └── management/     # Management commands
├── templates/          # HTML templates
├── static/             # Static files (CSS, JS)
└── media/              # User-uploaded files

域配置

该站点配置用于:

  • mcp-server.ca
  • www.mcp-server.ca
  • mcp-servcer.ca
  • www.mcp-servcer.ca

更新 ALLOWED_HOSTS 在 settings.py 如果需要的话。

许可证

MIT许可证