MCP代理服务器

基于角色环境变量的动态MCP代理服务器,用于简化AWS服务的MCP服务器配置。

  • by awslabs
  • Python
  • 本地部署
  • 9844 星标
  • 更新于

使用说明

核心MCP服务器

⚠️ 弃用通知:此服务器已弃用,将不再接收更新。现代MCP客户端(Kiro、Cursor、VS Code)本机支持多服务器配置,因此不需要代理/编排模式。请直接配置您需要的各个MCP服务器。看 迁移指南 用于角色到服务器的映射。

MCP服务器,通过基于角色的环境变量的动态代理服务器策略,为AWS使用MCP服务器提供起点。

特性

规划和编排

  • 提供快速理解和翻译到AWS服务的工具

动态代理服务器策略

核心MCP服务器实现了一种代理服务器策略,该策略基于基于角色的环境变量动态导入和代理其他MCP服务器。这允许您为特定用例或角色创建定制的服务器配置,而无需手动配置每台服务器。

基于角色的服务器配置

您可以通过设置环境变量来启用特定角色。每个角色对应于MCP服务器的逻辑分组,这些服务器通常用于特定用例。

重要:环境变量名可以是带连字符的小写或带下划线的大写(例如。, aws-foundation 或 AWS_FOUNDATION).某些系统可能不支持连字符格式,因此请选择最适合您环境的格式。

角色环境变量 描述 包含MCP服务器
aws-foundation AWS知识和API服务器 AWS-knowledge-server,AWS-API-server
dev-tools 开发工具 git repo研究服务器、代码文档生成服务器、aws知识服务器
ci-cd-devops CI/CD和DevOps cdk服务器、cfn服务器
container-orchestration 容器管理 eks服务器、ecs服务器、finch服务器
serverless-architecture 无服务器开发 无服务器服务器、lambda工具服务器、stepfunctions工具服务器、sns-sqs服务器
analytics-warehouse 数据分析和仓储 红移服务器、influexdb服务器的时间流、数据处理服务器、综合数据服务器
data-platform-eng 数据平台工程 dynamodb服务器、s3表服务器、数据处理服务器
frontend-dev 前端开发 前端服务器、nova canvas服务器
solutions-architect 解决方案架构 图表服务器、定价服务器、成本浏览器服务器、综合数据服务器、aws知识服务器
finops 财务运营 成本浏览器服务器、定价服务器、cloudwatch服务器、计费成本管理服务器
monitoring-observability 监控和可观察性 cloudwatch服务器、cloudwatch appsignals服务器、prometheus服务器、cloudtrail服务器
caching-performance 缓存和性能 elasticache服务器、memcached服务器
security-identity 安全和身份 iam服务器、支持服务器、架构良好的安全服务器
sql-db-specialist SQL数据库专家 postgres服务器、mysql服务器、aurora dsql服务器、红移服务器
nosql-db-specialist NoSQL数据库专家 dynamodb服务器、documentdb服务器、keyspaces服务器、neptune服务器
timeseries-db-specialist 时间序列数据库专家 influexdb服务器、prometheus服务器、cloudwatch服务器的时间流
messaging-events 消息和事件 sns-sqs服务器、mq服务器
healthcare-lifesci 医疗保健和生命科学 健康组学服务器

代理服务器策略的好处

  • 简化配置:使用单个环境变量启用多个服务器
  • 减少重复:服务器只导入一次,即使多个角色需要
  • 量身定制的体验:为特定用例创建自定义服务器配置
  • 灵活部署:在不同的服务器配置之间轻松切换

使用说明

  • 如果未启用任何角色,核心MCP服务器仍将提供其基本功能(prompt_understanding),但不会导入任何其他服务器
  • 您可以同时启用多个角色以创建全面的服务器配置
  • 代理策略确保每个服务器只导入一次,即使多个角色需要它

备注:并非所有AWS的MCP服务器都在这些逻辑分组中表示。对于特定的用例,您可能需要直接安装额外的MCP服务器。看 主README 获取可用MCP服务器的完整列表。

先决条件

  • Python 3.12或更高版本
  • 紫外线 -快速Python包安装程序和解析器
  • 配置了Bedrock访问权限的AWS凭据
  • Node.js(用于UVX安装支持)

安装

Kiro 光标 VS代码

在MCP客户端配置中配置MCP服务器(例如,对于Kiro,编辑 ~/.kiro/settings/mcp.json):

{
  "mcpServers": {
    "awslabs-core-mcp-server": {
      "command": "uvx",
      "args": [
        "awslabs.core-mcp-server@latest"
      ],
      "env": {
        "FASTMCP_LOG_LEVEL": "ERROR",
        "aws-foundation": "true",
        "solutions-architect": "true"
        // Add other roles as needed
      },
      "autoApprove": [],
      "disabled": false
    }
  }
}

要启用特定的基于角色的服务器配置,请将相应的环境变量添加到 env MCP客户端配置的一部分。例如,上述配置启用 aws-foundation 和 solutions-architect 角色,它将导入相应的MCP服务器。

Windows安装

对于Windows用户,MCP服务器配置格式略有不同:

{
  "mcpServers": {
    "awslabs-core-mcp-server": {
      "disabled": false,
      "timeout": 60,
      "type": "stdio",
      "command": "uv",
      "args": [
        "tool",
        "run",
        "--from",
        "awslabs.core-mcp-server@latest",
        "awslabs.core-mcp-server.exe"
      ],
      "env": {
        "FASTMCP_LOG_LEVEL": "ERROR",
        "AWS_PROFILE": "your-aws-profile",
        "AWS_REGION": "us-east-1",
        "aws-foundation": "true",
        "solutions-architect": "true"
        // Add other roles as needed
      }
    }
  }
}

或docker成功后 docker build -t awslabs/core-mcp-server .:

  {
    "mcpServers": {
      "awslabs-core-mcp-server": {
        "command": "docker",
        "args": [
          "run",
          "--rm",
          "--interactive",
          "--env",
          "FASTMCP_LOG_LEVEL=ERROR",
          "--env",
          "aws-foundation=true",
          "--env",
          "solutions-architect=true",
          "awslabs/core-mcp-server:latest"
        ],
        "env": {},
        "disabled": false,
        "autoApprove": []
      }
    }
  }

工具与资源

服务器通过MCP接口公开以下工具:

  • prompt_understanding -在为给定提示构建AWS解决方案时,帮助提供指导和规划支持