demo_mcp_on_amazon_bedrock开源项目教程
demo_mcp_on_amazon_bedrock 项目地址: https://gitcode.com/gh_mirrors/de/demo_mcp_on_amazon_bedrock
1、项目介绍
demo_mcp_on_amazon_bedrock 是一个基于 Amazon Bedrock 和 Anthropic MCP 的开源项目,旨在为用户提供一个灵活的 ChatBot 交互服务。该项目利用 MCP,使 ChatBot 能够与外部系统交互,从而扩展其应用场景。项目支持多种大模型,如 Amazon Nova、Claude Sonnet 等,并完全兼容 Anthropic 官方 MCP 标准。
2、项目快速启动
2.1 环境准备
- 安装 NodeJS 和 Python:项目支持 NodeJS 和 Python 开发的 MCP Server,因此需要安装这两个环境。
- 创建 Python 虚拟环境:下载克隆项目后,进入项目目录创建 Python 虚拟环境并安装依赖。
2.2 环境配置
- 创建 .env 文件:运行以下命令创建 .env 文件,并根据实际情况修改配置信息。
cat << EOF > .env
AWS_ACCESS_KEY_ID=(可选,如果有credential.csv则不需要)
AWS_SECRET_ACCESS_KEY=(可选)<your-secret-key>
AWS_REGION=<your-region>
LOG_DIR=./logs
CHATBOT_SERVICE_PORT=8502
MCP_SERVICE_HOST=127.0.0.1
MCP_SERVICE_PORT=7002
API_KEY=123456
MAX_TURNS=200
INACTIVE_TIME=60
ddb_table=mcp_user_config_table
USE_HTTPS=0
EOF
- 配置 DynamoDB 表(可选):使用 AWS CLI 创建一个 DynamoDB 表用于保存 user config 信息。如果不创建 DynamoDB,则直接生成 user_mcp_config.json 保存在 conf/ 目录下。
aws dynamodb create-table \
--table-name mcp_user_config_table \
--attribute-definitions AttributeName=userId,AttributeType=S \
--key-schema AttributeName=userId,KeyType=HASH \
--billing-mode PAY_PER_REQUEST
2.3 启动服务
- 编辑配置文件:编辑 conf/config.json 文件,预设要启动的 MCP server。
- 启动服务:运行 start_all.sh 脚本启动服务。启动后,可查看日志确认无报错,然后运行测试脚本检查 Chat 接口。
bash start_all.sh
3、应用案例和最佳实践
3.1 应用案例
- 本地文件系统、数据库、开发工具、互联网检索等无缝接入:利用 MCP,ChatBot 可以与外部系统交互,实现更多应用场景。
- 多用户支持:项目支持多用户,用户 session 隔离,支持并发访问。
3.2 最佳实践
- 前后端分离:将 MCP Client 和 MCP Server 部署到服务器端,用户可以直接使用 Web 浏览器通过后端 Web 服务交互。
- 流式响应:支持流式响应和工具调用,使 ChatBot 交互更加流畅。
- 工具调用结果展示和思考过程可视化:展示工具调用过程和结果,帮助用户更好地理解 ChatBot 的思考过程。
4、典型生态项目
- Lambda-MCP-Server:一个基于 AWS Lambda 的 MCP Server 实现,可用于部署 Serverless HTTP Stream Server。
- 其他开源 MCP Server:社区有许多开源 MCP Server 实现,可供选择使用。
本项目旨在为用户提供一个灵活、可扩展的 ChatBot 交互服务,通过 MCP 使 ChatBot 能够与外部系统交互,从而扩展其应用场景。欢迎大家一起关注和参与项目发展!
demo_mcp_on_amazon_bedrock 项目地址: https://gitcode.com/gh_mirrors/de/demo_mcp_on_amazon_bedrock
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考