Cloudinary MCP+OpenAI集成问题报告
问题摘要
我正在按照以下步骤实现Cloudinary的MCP服务器与OpenAI的集成 官方文件,但在使用时遇到来自OpenAI的API的400错误 mcp_server 工具类型。
实现细节
端点: POST /optimize-image\ 技术栈:
- Node.js v20.17.0
- 快递服务器
- OpenAI SDK v5.6.0
- Cloudinary资产管理v0.5.0
index.js中的关键实现片段:
app.post('/optimize-image', async (req, res) => {
try {
const response = await openai.chat.completions.create({
model: 'gpt-4o',
messages: [{
role: 'user',
content: `Upload and optimize: ${req.body.imageUrl}`
}],
tools: [{
type: 'mcp_server',
mcp_server: {
name: 'cloudinary-asset-mgmt',
command: 'npx',
args: ['-y', '--package', '@cloudinary/asset-management', '--', 'mcp', 'start'],
env: {
CLOUDINARY_CLOUD_NAME: process.env.CLOUDINARY_CLOUD_NAME,
CLOUDINARY_API_KEY: process.env.CLOUDINARY_API_KEY,
CLOUDINARY_API_SECRET: process.env.CLOUDINARY_API_SECRET
}
}
}]
});
res.json(response.choices[0].message);
} catch (error) {
res.status(500).json({ error: error.message });
}
});测试命令
curl -X POST http://localhost:3000/optimize-image \
-H "Content-Type: application/json" \
-d '{"imageUrl":"https://res.cloudinary.com/demo/image/upload/sample.jpg"}'错误结果
服务器响应:
{
"error": "400 Missing required parameter: 'tools[0].function'."
}OpenAI错误详细信息:
{
"status": 400,
"error": {
"message": "Missing required parameter: 'tools[0].function'.",
"type": "invalid_request_error",
"param": "tools[0].function",
"code": "missing_required_parameter"
}
}环境验证
- OpenAI API密钥:✅ 有效且有效
- Cloudinary凭据:✅ 已验证且正确
- 依赖关系:✅ 正确安装
- 服务器:✅ 运行时没有启动错误
观察
- 请求结构与Cloudinary的文档完全匹配
- OpenAI拒绝
mcp_server工具类型 - 错误特别是缺少引用
tools[0].function参数 - 不同的图像URL会出现相同的错误
- 基本OpenAI请求(无工具)成功工作
请求协助
您能帮助识别:
- 是
mcp_server当前OpenAI SDK版本仍然支持工具类型? - 构建MCP服务器集成工具阵列的正确方法是什么?
- 除了文档中的参数外,还需要其他参数吗?
- OpenAI SDK v5.6.0和Cloudinary的MCP方法之间是否存在兼容性问题?
