本项目展示了如何借助Model Context Protocol(MCP)协议,将谷歌表单与CamelAIOrg代理服务进行集成。用户能够通过自然语言发起创建表单的请求,系统内部则利用MCP协议完成交互,为表单创建提供了便捷、高效的方式。
docker-compose up --build
此命令将启动MCP服务器(监听5000端口)和代理服务(监听5001端口)。
创建项目根目录下的.env文件:
# 谷歌API凭证
GOOGLE_CLIENT_ID=你的_client_id
GOOGLE_CLIENT_SECRET=你的_client_secret
GOOGLE_REFRESH_TOKEN=你的_refresh_token
# 服务器配置
FLASK_ENV=development
PORT=5000
DEBUG=True
# CamelAIOrg代理配置
AGENT_ENDPOINT=http://agents:5001/process
AGENT_API_KEY=你的代理API密钥
获取刷新令牌步骤:
访问地址:http://localhost:5000
界面功能:
google-form-mcp-server/
├── server/ # MCP服务器实现
│ ├── app.py # 主Flask应用程序
│ ├── config.py # 配置管理
│ ├── forms_api.py # 谷歌表单API集成
│ ├── mcp_handler.py # MCP协议处理逻辑
│ ├── requirements.txt # Python依赖项
│ ├── static/ # 静态资源文件
│ ├── templates/ # HTML模板
│ └── utils/ # 工具函数
├── agents/ # CamelAIOrg代理服务
│ ├── agent_integration.py # 代理集成实现
│ ├── agent_server.py # 代理API服务器
│ └── requirements.txt # Python依赖项
├── Dockerfile # MCP服务器Docker镜像配置
├── docker-compose.yml # 多容器部署配置
├── .env.example # 环境变量示例文件
└── README.md # 项目文档
GET /api/health:健康检查GET /api/swagger:查看API文档POST /api/create-form:创建新表单
{
"form_name": "客户反馈表单",
"questions": [
{ "type": "文本", "prompt": "您的姓名" },
{ "type": "邮箱", "prompt": "您的邮箱地址" }
]
}
POST /process:处理自然语言请求
curl -X POST http://localhost:5001/process \
-H "Content-Type: application/json" \
-d '{"command": "创建表单", "details": {"question_count": 3}}'
black .)项目采用MIT许可证,具体条款参见LICENSE文件。
感谢以下项目的支持: