Aws Common Mcp Servers

Aws Common Mcp Servers

🚀 AWS 公共 MCP 服务器与 CDK 部署指南

本项目提供了可部署的 Model Context Protocol (MCP) 服务器,适用于常见的 AWS 服务。同时,附带使用 Python 编写的 AWS Cloud Development Kit (CDK) 代码,用于配置必要的基础设施,以便在 ECS Fargate 上运行这些服务器。其目标是为 AI 开发者(如使用 Amazon Bedrock、LangChain 的开发者)提供可复用组件,使他们能轻松将这些服务器部署到自己的 AWS 账户中,通过标准化的 MCP 接口与 AWS 服务进行交互。

✨ 主要特性

包含的 MCP 服务器

  1. AWS Location Service (TypeScript):提供搜索位置、获取位置详细信息、计算路线等功能。基于 [aws - location - server](https://github.com/modelcontextprotocol/servers/tree/main/src/aws - location)。
  2. Amazon S3 (Python):提供基本的 S3 操作工具,如列出存储桶/对象、获取、上传和删除对象。
  3. Amazon Aurora PostgreSQL(通过 RDS 数据 API) (Python):允许使用安全的 RDS 数据 API 向指定的 Aurora PostgreSQL 集群执行 SQL 语句。

📦 安装指南

先决条件

  • AWS 账户
  • 在本地配置并具有适当权限的 AWS CLI(用于 CDK 部署)。凭证应通过 ~/.aws/credentials 文件或环境变量设置。
  • Node.js 和 npm(用于位置服务服务器的构建过程和 CDK)
  • Python 3.9+(用于 CDK 和基于 Python 的 MCP 服务器)
  • AWS CDK CLI (npm install -g aws - cdk)
  • Docker(本地运行以供 CDK 构建容器镜像)
  • Git

部署 Aurora PostgreSQL 数据 API 服务器的特定先决条件

  • 在目标 AWS 区域中运行的现有 Aurora PostgreSQL 兼容集群。
  • 集群必须启用 RDS 数据 API。
  • AWS Secrets Manager 中包含数据库凭据(用户名、密码)的秘密。部署所需的秘密 ARN。

项目结构

aws - mcp - infra/
├── mcp_servers/             # MCP 服务器的源代码
│   ├── location_service/    # TypeScript 服务器用于 AWS Location Service
│   ├── s3/                  # Python 服务器用于 S3
│   └── aurora_pg_data_api/  # Python 服务器用于 Aurora PG 数据 API
├── cdk_deployment/          # CDK 部署代码和相关配置
│   ├── app.py              # 主应用程序文件
│   ├── stack.py            # 堆栈定义文件
│   └── README.md           # 部署说明文档
└── .env                     # 环境变量文件,用于 CDK 配置

安装与配置

1. 安装依赖项

在项目目录中运行以下命令以安装所需的依赖项:

pip install -r requirements.txt
npm install --location_service

2. 配置环境变量

根据您的 AWS 账户和区域,更新 .env 文件中的配置:

AWS_ACCOUNT_ID=your_account_id
AWS_REGION=your_region
DB_CLUSTER_ARN=your_db_cluster_arn
DB_SECRET_ARN=your_db_secret_arn

部署

1. 初始化 CDK 环境

在项目根目录中运行以下命令以初始化 CDK 环境:

cdk init --language python

2. 创建和部署堆栈

创建一个新的 CDK 堆栈文件 stack.py,然后运行以下命令以部署资源:

cdk synth && cdk deploy

💻 使用示例

在 AWS 中使用

  • Lambda 函数或 Bedrock 代理:使用 AWS SDK(例如 Python 中的 boto3)调用 ECS 任务,或者通过 AWS Systems Manager Session Manager 进行交互(如果已配置)。具体机制取决于客户端应用程序的设计。
  • 本地测试:在部署前,您可以直接运行这些服务器。对于位置服务,请运行 node build/index.js;对于 Aurora 数据 API 服务器,请运行 python aurora_pg_data_api_server.py。确保本地环境已配置 AWS 凭证,并且对于 Aurora 服务器,设置了 DB_CLUSTER_ARNDB_SECRET_ARN 环境变量。

📚 详细文档

清理

要删除所有已部署的资源,运行:

cdk destroy --all

通过以上步骤,您可以轻松地将这些 MCP 服务器部署到 AWS 并进行管理。

  • 0 关注
  • 0 收藏,18 浏览
  • system 提出于 2025-10-05 16:45

相似服务问题

相关AI产品