Token导航 LogoToken导航TokenDH.com
Hao Zhang615 MCP logo
运维云端未说明官方级别未说明来源级核验

Hao Zhang615 MCP

MCP Server

该解决方案提供了一个生产就绪的代理,通过基于FastAPI的HTTP桥接,使Microsoft Copilot Studio能够与AWS MCP服务器通信。

工具数

0

提示词数

0

GitHub Stars

0

资源数

0
代理服务FastAPIVS CodeVS Code

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

HaoZhang615

提供方

HaoZhang615

最后核验

2026/5/17 20:22

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

详细介绍

AWS MCP 服务器到 Microsoft Copilot Studio 解决方案加速器

此解决方案提供了一个可投入生产的代理,使 Microsoft Copilot Studio 能够通过基于 FastAPI 的 HTTP 桥接与 AWS MCP(模型上下文协议)服务器进行通信。

🚀 快速入门

先决条件

  • Azure 订阅
  • Azure 开发者 CLI(azd
  • 具有Bedrock访问权限的AWS凭证
  • 带有Azure扩展的VS Code

1. 设置环境配置

# Clone and navigate to the project
git clone https://github.com/HaoZhang615/Azure-Container-Apps-as-Proxy-for-AWS-managed-MCP-Server-via-FastAPI.git
cd Azure-Container-Apps-as-Proxy-for-AWS-managed-MCP-Server-via-FastAPI

# Copy the environment template
cp .env.template .env

# Edit .env file with your actual AWS credentials
AWS_CLIENT_ID=your_actual_client_id
AWS_CLIENT_SECRET=your_actual_client_secret
AWS_AUTH_URL=https://your-cognito-domain.auth.region.amazoncognito.com/oauth2/token
AWS_MCP_URL=https://bedrock-agentcore.region.amazonaws.com/runtimes/your-runtime-arn/invocations?qualifier=DEFAULT
AWS_SCOPE=your_actual_scope

2. 部署到Azure

# Deploy infrastructure and application
# The .env values will be automatically loaded as environment variables
azd up

部署过程将:

  1. 预部署自动读取您的 .env 文件并加载所有变量
  2. 验证验证所有必需的AWS凭证是否已设置
  3. 基础设施使用 Azure Key Vault 部署以实现安全的密钥存储
  4. 应用程序使用环境变量构建和部署容器应用

Azd 钩子将自动运行,无论您使用的是哪个环境,确保您的(操作/设置/等,根据上下文补充具体内容) .env 文件总是在部署前加载。

3. 设置Copilot Studio自定义连接器

  1. 在Copilot Studio中,创建一个新的自定义连接器(从完整教程中学习更多内容
  2. 使用您已部署的 Azure 容器应用的 URL 作为基础 URL
  3. 配置POST请求以 /mcp 终端节点
  4. 将认证设置为“无认证”(内部处理)

⚙️ 配置

环境设置

该项目采用了一种 .env 配置文件。复制 .env.template to .env 并填写你的价值观:

cp .env.template .env

所需的环境变量

变量描述示例
(无对应中文)(无对应中文)(无对应中文)AWS_CLIENT_ID2p3li5ek3...AWS Cognito 客户端 ID
AWS_CLIENT_SECRET1ok90cr91cmjlj...AWS Cognito 客户端密钥
AWS_AUTH_URLhttps://.amazoncognito.com/oauth2/tokenCognito OAuth2 令牌端点
AWS_MCP_URLhttps://.amazonaws.com/runtimes/arn...AWS MCP 服务器端点
AWS_SCOPE/readAWS访问的OAuth2范围

|

  • 安全注意事项 .env 这个(或“该”) .gitignore文件被 Git 自动忽略(在
  • )
  • 在部署过程中,值被安全地存储在 Azure 密钥保管库中
  • AWS_CLIENT_SECRET 以密钥保管库(Key Vault)秘密的形式存储,而非明文存储

环境变量由 azd 插件自动加载

├── main.py                 # FastAPI proxy server
├── pyproject.toml         # Python dependencies
├── Dockerfile             # Production container config
├── azure.yaml             # Azure Developer CLI config with hooks
├── .env.template          # Environment template (copy to .env)
├── .env                   # Your environment variables (gitignored)
└── infra/                 # Azure infrastructure (Bicep)
    ├── main.bicep         # Main infrastructure template  
    ├── main.parameters.json # Infrastructure parameters
    └── resources.bicep    # Resource definitions with Key Vault

📁 项目结构

Copilot Studio → Custom Connector → Azure Container App → AWS MCP Server
                                   (This Solution)

🏗️ 建筑学

  • 代理处理:
  • AWS Cognito OAuth2 认证
  • MCP协议转换
  • HTTP状态码规范化
  • 错误处理和日志记录

通过 Azure Key Vault 实现安全的凭证管理

可选的环境变量 | 变量 | 默认值 | 描述 | |----------|---------|-------------| PORT | 3000 | | 服务器端口 | LOG_LEVEL | INFO |

| 日志级别 |

🔧 定制化

修改AWS认证 get_aws_token() 编辑 main.py函数中的(功能/作用)

async def get_aws_token():
    # Your custom AWS authentication logic
    pass

添加请求验证 validate_mcp_request() 扩展

def validate_mcp_request(request_data):
    # Your custom validation logic
    pass

功能:

更改响应处理 process_aws_response() 修改

def process_aws_response(aws_response):
    # Your custom response processing
    pass

功能:

🐞 故障排除

  1. 常见问题

- 来自AWS的空响应 - 检查AWS凭证配置 - 验证MCP服务器终端URL

  1. 查看 Azure 容器应用日志

- 认证失败 - 验证 AWS_CLIENT_ID 和 AWS_CLIENT_SECRET - 在AWS_AUTH_URL中检查Cognito域名

  1. 确保OAuth2作用域设置正确

- Copilot Studio 连接错误 - 验证自定义连接器配置 - 检查 Azure 容器应用是否正在运行

检查网络连接

调试

LOG_LEVEL=DEBUG

通过设置环境变量来启用详细日志记录:

azd logs

查看 Azure 容器应用日志:

📊 监控

  • 该解决方案包括: /health
  • 健康检查端点位于
  • 使用关联ID进行结构化日志记录

Azure Application Insights 集成(通过容器应用)

  • 🔒 安全
  • AWS 凭据以 Azure 容器应用环境变量的形式存储
  • 源代码中不包含敏感数据
  • 通过Azure容器应用强制使用HTTPS

为安全起见配置的CORS(跨源资源共享)

🚀 生产环境部署

  • 该解决方案已准备好投入生产,具备:
  • 多阶段Docker构建以进行优化
  • 可靠性健康检查
  • 安全方面的最小依赖
  • Azure Container Apps 用于可扩展性

使用Bicep实现基础设施即代码

FastAPI 文档

  1. 🤝 贡献(或:参与贡献)
  2. 为仓库创建分支(或:克隆仓库)
  3. 创建一个特性分支
  4. 做出你的更改
  5. 彻底测试

提交一个拉取请求

📄 许可证

目录标签

目录标签

代理服务FastAPIVS CodePython本地部署HTTP桥接AWSMCPMicrosoftCopilotStudio

支持客户端

VS Code

接入字段

传输方式(transport,传输协议)

未说明

鉴权方式(authType,认证方式)

token

工具数量(toolCount,工具数)

0

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

未说明token部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

仍需确认:installCommand

来源信息

继续浏览同类 MCP