跳转到主要内容
Chinese, Simplified

category

我们很高兴地宣布针对代码助理的AWS MCP服务器的开源版本,这是一套专门的模型上下文协议(MCP)服务器,可以将Amazon Web Services(AWS)的最佳实践直接带入您的开发工作流程。我们的专业AWS MCP服务器将深厚的AWS知识与代理AI功能相结合,以加速关键领域的开发。每个AWS MCP服务器都专注于AWS最佳实践的特定领域,在整个开发过程中共同提供全面的指导。

本文是AWS MCP服务器系列文章中的第一篇。在这篇文章中,我们将介绍这些专门的MCP服务器如何在将安全控制、成本优化和AWS架构良好的最佳实践纳入代码的同时,大大缩短您的开发时间。无论您是经验丰富的AWS开发人员还是刚刚开始云开发,您都将了解如何使用AI驱动的编码助手来解决常见的挑战,如复杂的服务配置、基础设施即代码(IaC)实施和知识库集成。在本文结束时,您将了解如何开始使用AWS MCP服务器来转换您的开发工作流程,并更快地提供更好的解决方案。

如果你想马上开始,请跳到“几分钟内从概念到工作代码”一节

人工智能正在改变我们构建软件的方式,为大幅加速开发创造机会,同时提高代码质量和一致性。今天的人工智能助手可以理解复杂的需求,生成生产就绪的代码,并帮助开发人员实时应对技术挑战。这种人工智能驱动的方法在云开发中尤其有价值,开发人员需要协调多个服务,同时保持安全性、可扩展性和成本效益。

开发人员需要能够理解AWS服务和最佳实践细微差别的代码助理。专业的人工智能代理可以通过以下方式满足这些需求:

  • 提供有关AWS服务选择和配置的上下文指导
  • 优化对安全最佳实践和监管要求的合规性
  • 促进最有效的利用和最具成本效益的解决方案
  • 使用AWS特定模式自动化重复的实施任务

这种方法意味着开发人员可以专注于创新,而人工智能助手则可以处理无差别的繁重编码工作。无论您是在工作流程中使用Amazon Q、Amazon Bedrock还是其他AI工具,AWS MCP服务器都可以通过深入的AWS特定知识来补充和增强这些功能,帮助您更快地构建更好的解决方案。

模型上下文协议(MCP)是一种标准化的开放协议,可实现大型语言模型(LLM)、数据源和工具之间的无缝交互。该协议允许AI助手使用专门的工具,并通过将模型的功能扩展到其内置知识之外来访问特定领域的知识,同时将敏感数据保存在本地。通过MCP,通用LLM现在可以无缝访问初始训练数据之外的相关知识,并通过结合特定的背景和最佳实践有效地引导达到预期的输出。

加速在AWS上的构建

如果您的AI助手能够立即访问深入的AWS知识,了解每一项AWS服务、最佳实践和架构模式,那会怎么样?通过MCP,我们可以将通用LLM连接到专门的知识服务器,从而将其转化为AWS专家。这为加速云开发,同时保持安全性和遵循最佳实践开辟了令人兴奋的新可能性。

在AWS上快速构建,从第一行代码开始就自动应用最佳实践。跳过数小时的文档研究,立即访问亚马逊基岩知识库等复杂服务的现成模式。我们的MCP服务器将帮助您从一开始就编写架构良好的代码,第一次正确实施AWS服务,并部署安全、可观察和设计成本优化的解决方案。转变您今天在AWS上构建的方式。

  • 自动执行AWS最佳实践——从一开始就编写具有内置安全控制、适当可观察性和优化资源配置的架构良好的代码
  • 大幅减少研究时间——停止花几个小时阅读文档。我们的MCP服务器为正确实施AWS服务提供上下文相关的指导,自动解决常见的陷阱
  • 立即访问即用型模式——使用从一开始就遵循AWS最佳实践的预构建AWS CDK构造、Amazon Bedrock Agent模式生成器和Amazon Bedrocks知识库集成模板
  • 主动优化成本——在设计解决方案时,通过获取成本优化建议并生成全面的成本报告来分析部署前的AWS支出,从而防止过度配置

为了将这一愿景变为现实,并使AWS开发更快、更安全、更高效,我们创建了AWS MCP服务器——一套专门的AWS MCP服务器,将AWS最佳实践直接带入您的开发工作流程。我们的专业AWS MCP服务器将深厚的AWS知识与AI功能相结合,以加速关键领域的开发。每个AWS MCP服务器都专注于AWS最佳实践的特定领域,在整个开发过程中共同提供全面的指导。

用于AWS开发的特定域MCP服务器概述

我们的专用MCP服务器旨在覆盖AWS开发的不同方面,每台服务器都为特定领域带来了深入的知识,同时协同工作以提供全面的解决方案:

  • 核心-提供AI处理管道功能并充当中央协调器的基础服务器。它有助于为构建AWS解决方案提供明确的计划,并可以根据需要与其他MCP服务器联合。
  • AWS云开发工具包(AWS CDK)-提供AWS CDK知识,包括实施最佳实践的工具、使用CDK-nag的安全配置、用于AWS Lambda集成的Powertools以及用于生成AI服务的专门构造。它确保基础设施即代码(IaC)从一开始就遵循AWS良好架构原则。
  • 亚马逊基岩知识库——实现对亚马逊基岩知识数据库的无缝访问,因此开发人员可以用自然语言查询企业知识,按数据源过滤结果,并使用重新排序来提高相关性。
  • Amazon Nova Canvas-通过Amazon Bedrock使用Amazon Nova Canvas提供图像生成功能,能够从文本提示和调色板创建视觉效果,非常适合模型、图表和UI设计概念。
  • 成本–分析AWS服务成本并生成全面的成本报告,帮助开发人员了解其架构决策的财务影响,并优化成本效益。

Prerequisites

To complete the solution, you need to have the following prerequisites in place:

  • uv package manager
  • Install Python using uv python install 3.13
  • AWS credentials with appropriate permissions
  • An MCP-compatible LLM client (such as Anthropic’s Claude for Desktop, Cline, Amazon Q CLI, or Cursor)

From concept to working code in minutes

You can download the AWS MCP Servers on GitHub or through the PyPI package manager. Here’s how to get started using your favorite code assistant with MCP support.

Add the server to your MCP client configuration:

# Install and setup the MCP servers
{
  "mcpServers": {
    "awslabs-core-mcp-server": {
      "command": "uvx",
      "args": ["awslabs.core-mcp-server@latest"],
      "env": {
        "FASTMCP_LOG_LEVEL": "ERROR",
        "MCP_SETTINGS_PATH": "path to your mcp server settings"
      },
      "autoApprove": [],
      "disabled": false
    },
    "awslabs-bedrock-kb-retrieval-mcp-server": {
      "command": "uvx",
      "args": ["awslabs.bedrock-kb-retrieval-mcp-server@latest"],
      "env": {
        "AWS_PROFILE": "your-aws-profile",
        "AWS_REGION": "us-east-1"
      }
    },
    "awslabs-cdk-mcp-server": {
      "command": "uvx",
      "args": ["awslabs.cdk-mcp-server@latest"],
      "env": {
        "FASTMCP_LOG_LEVEL": "ERROR"
      }
    },
    "awslabs-cost-analysis-mcp-server": {
      "command": "uvx",
      "args": ["awslabs.cost-analysis-mcp-server@latest"],
      "env": {
        "AWS_PROFILE": "your-aws-profile",
        "FASTMCP_LOG_LEVEL": "ERROR"
      }
    },
    "awslabs-nova-canvas-mcp-server": {
      "command": "uvx",
      "args": ["awslabs.nova-canvas-mcp-server@latest"],
      "env": {
        "AWS_PROFILE": "your-aws-profile",
        "AWS_REGION": "us-east-1"
      }
    }
  }
}

AWS MCP服务器正在运行

以下是AWS MCP服务器如何改变开发体验:

开发人员:

“我需要使用Amazon Bedrock构建一个人工智能聊天机器人,它可以回答我们公司知识库中的问题。”

核心:

“我将帮助您建立一个亚马逊卧室知识库聊天机器人。让我们创建一个使用亚马逊卧室代理和自定义操作组来调用您的内部API的架构。”

Core生成了一个全面的体系结构图,显示了知识库集成、带有操作组的Amazon Bedrock Agent配置、API连接以及组件之间的数据流。

AWS CDK:

“这是您的聊天机器人与亚马逊基岩代理行动组的基础设施代码。我为AWS Lambda添加了适当的IAM角色、安全控制和Powertools,以实现可观察性。”

 
// CDK code
    const kb = new bedrock.VectorKnowledgeBase(this, 'KB', {
      embeddingsModel: bedrock.BedrockFoundationModel.TITAN_EMBED_TEXT_V2_1024,
      instruction: 'Use this knowledge base to answer questions about books. ' +
        'It contains the full text of novels. Please quote the books to explain your answers.',
    });

    const dataSource = new bedrock.S3DataSource(this, 'DataSource', {
      bucket: docBucket,
      knowledgeBase: kb,
      dataSourceName: 'books',
      chunkingStrategy: bedrock.ChunkingStrategy.fixedSize({
        maxTokens: 500,
        overlapPercentage: 20
      }),
    });

    const agent = new bedrock.Agent(this, 'Agent', {
      foundationModel: bedrock.BedrockFoundationModel.ANTHROPIC_CLAUDE_3_5_SONNET_V2_0,
      instruction: 'You are a helpful and friendly agent that answers questions about literature.',
      knowledgeBases: [kb],
      userInputEnabled: true,
      shouldPrepareAgent:true
    });

    const actionGroupFunction = new lambda_python.PythonFunction(this, 'ActionGroupFunction', {
      runtime: lambda.Runtime.PYTHON_3_12,
      entry: path.join(__dirname, '../lambda/action-group'),
      layers: [lambda.LayerVersion.fromLayerVersionArn(this, 'PowerToolsLayer', `arn:aws:lambda:${this.region}:017000801446:layer:AWSLambdaPowertoolsPythonV2:60`)],
      timeout:cdk.Duration.minutes(2)
    });

    const actionGroup = new AgentActionGroup({
      name: 'query-library',
      description: 'Use these functions to get information about the books in the library.',
      executor: bedrock.ActionGroupExecutor.fromlambdaFunction(actionGroupFunction),
      enabled: true,
      apiSchema: bedrock.ApiSchema.fromLocalAsset(path.join(__dirname, 'action-group.yaml')),
    });

    agent.addActionGroup(actionGroup);
// the rest of the code

CDK MCP服务器生成完整的AWS CDK代码以部署整个解决方案。它会自动运行cdk-nag以识别潜在的安全问题,并为每个发现提供补救步骤,确保基础设施遵循AWS良好架构的最佳实践。

亚马逊基岩知识库检索:

“我将使用亚马逊基岩知识数据库MCP服务器从您的内部开发平台和文档中获取相关信息。”

Amazon Bedrock知识库MCP服务器可直接在您的MCP客户端中访问您在AWS上的现有知识库。例如,您可以使用此服务器将内部数据的上下文直接提供给代码助理。服务器可以在多个知识库中搜索,并对特定数据源使用过滤器。

Amazon Nova Canvas:

“为了增强您的登录页面,我将使用Amazon Nova Canvas MCP服务器生成一个图像,以赞美您的应用程序和行业。”

Amazon Nova Canvas MCP服务器在您的AWS帐户中使用Amazon Nova Canvas生成图像。服务器还包括图像生成的提示指南,因此MCP客户端中的LLM可以帮助您编写更好的图像生成提示。

成本分析:

“根据您的预期使用模式和作为代码的应用程序基础架构,以下是每月的估计成本明细和优化建议。”

成本分析MCP服务器生成详细的成本分析报告,显示每项AWS服务的预计费用,并提供降低成本的具体建议。

使用AWS MCP服务器,通常需要数天的研究和实施工作可以在几分钟内完成,其质量、安全性和成本效益都优于手动开发。

MCP辅助开发的最佳实践

为了在保持安全性和代码质量的同时最大限度地发挥MCP辅助开发的优势,开发人员应遵循以下基本准则:

  • 在部署之前,始终检查生成的代码的安全影响
  • 使用MCP服务器作为加速器,而不是替代开发人员的判断和专业知识
  • 使用最新的AWS安全最佳实践更新MCP服务器
  • 配置AWS凭据时遵循最小权限原则
  • 对生成的基础架构代码运行安全扫描工具

即将出现在系列中

本文介绍了AWS MCP服务器的基础,以及它们如何通过专门的、特定于AWS的MCP服务器加速AWS开发。在接下来的文章中,我们将深入探讨:

  • 每个MCP服务器功能的详细演练
  • 将AWS MCP服务器集成到开发工作流中的高级模式
  • 真实案例研究显示AWS MCP服务器对开发速度的影响
  • 如何使用您自己的自定义MCP服务器扩展AWS MCP服务器

 

Stay tuned to learn how AWS MCP Servers can transform your specific AWS development scenarios and help you build better solutions faster. Visit our GitHub repository or Pypi package manager to explore example implementations and get started today.

本文地址
最后修改
星期二, 九月 23, 2025 - 13:24
Tags
 
Article