使用说明
MCP 服务器
这个仓库包含一个最小化的Django项目,该项目提供了机器控制协议(MCP)风格的端点,用于实验与OpenAI的集成。项目使用内存存储来模拟数据库记录,并通过环境驱动的配置将提示转发到OpenAI响应API。
开始入门
-
安装Python依赖项:
pip install -r requirements.txt -
配置所需的环境变量(见下文)。
-
应用迁移并运行测试套件以确认安装:
python manage.py migrate python manage.py test -
在不同的终端中安装前端依赖项并启动开发服务器:
# Terminal 1 - Django API python manage.py runserver # Terminal 2 - React development server cd frontend npm install npm run devVite 开发服务器会代理以以下内容开头的 API 请求
/mcp/连接到运行在8000端口上的Django后端,因此无需额外的 需要配置CORS。请更新frontend/.env.development如果你的后端运行在不同的主机或端口上。 -
参观
http://127.0.0.1:5173/在开发过程中使用MCP客户端接口。MCP端点仍然可用,位于
http://127.0.0.1:8000/mcp/并且,如果您需要,它也接受JSON-RPC风格的POST请求 直接与之互动(例如通过curl或者邮递员(Postman)。
环境变量
该项目读取以下环境变量: mcp_server/settings.py:
| 变量 | 描述 | 默认值 |
|---|---|---|
OPENAI_API_KEY 用于与OpenAI进行身份验证的API密钥。 |
空字符串(直播请求时必需) | |
OPENAI_BASE_URL OpenAI API的基地址。通过兼容网关路由时可覆盖该地址。 |
https://api.openai.com/v1 |
|
OPENAI_MODEL 传递给响应API的模型标识符。 |
gpt-4o-mini |
至少您必须提供 OPENAI_API_KEY 生成真实的完成结果。通过模拟客户端,测试可以在不连接网络的情况下运行。
虚假数据模型
该 interactions 应用(或APP)播下了一小撮(种子/想法) InteractionRecord 模拟数据库支持资源的条目。MCP视图提供了操作来列出可用记录、获取单个记录,并使用提供的提示或记录的默认提示生成OpenAI支持的响应。
前端配置
前端从(某处)读取运行时配置 .env 使用(该工具/方法)处理文件 VITE_ 前缀。提供两个预设:
frontend/.env.development将API基础URL设为默认值/mcp/以及通过代理http://localhost:8000。frontend/.env.production将API基础URL设置为默认值/mcp/当React包由Django提供服务时。
以(权力)否决 VITE_API_BASE_URL 在这些文件中(或创建 .env.local) 指向另一个MCP主机。
为生产构建(或:准备生产环境)
创建一个优化后的React构建版本,并将其复制到Django的静态目录中:
cd frontend
npm run build:django
编译后的资源存储在 mcp_server/static/frontend/Django 会自动从根目录提供打包后的界面
URL(统一资源定位符)/当构建已存在时。如果您更倾向于单独部署前端,请运行 npm run build 并托管以下内容:
frontend/dist 在你选择的静态托管服务提供商上。
运行测试
运行Django测试运行器:
python manage.py test
单元测试对MCP端点进行了验证,并确保通过依赖注入和模拟,OpenAI客户端的调用能够正确连接。
