AWS文档MCP服务器

提供AWS文档访问、搜索和内容推荐的MCP服务器工具。

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

使用说明

AWS文档MCP服务器

AWS文档的模型上下文协议(MCP)服务器

此MCP服务器提供访问AWS文档、搜索内容和获取建议的工具。

特性

  • 阅读文档:获取AWS文档页面并将其转换为markdown格式
  • 搜索文档:使用官方搜索API搜索AWS文档(仅限全球)
  • 阅读章节:获取AWS文档页面的部分并将其转换为markdown格式。
  • 搜索表:过滤和搜索大型文档表中的行(例如服务配额、定价),而不读取整页(仅限全局)
  • 建议:获取AWS文档页面的内容建议(仅限全球)
  • 获取可用服务列表:获取中国地区可用的AWS服务列表(仅限中国)

先决条件

安装要求

  1. 安装 uv 来自 星体 或 GitHub自述
  2. 使用以下命令安装Python 3.10或更高版本 uv python install 3.10 (或更新版本)

安装

Kiro 光标 VS代码

在MCP客户端配置中配置MCP服务器:

{
  "mcpServers": {
    "awslabs.aws-documentation-mcp-server": {
      "command": "uvx",
      "args": ["awslabs.aws-documentation-mcp-server@latest"],
      "env": {
        "FASTMCP_LOG_LEVEL": "ERROR",
        "AWS_DOCUMENTATION_PARTITION": "aws",
        "MCP_USER_AGENT": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36"
      },
      "disabled": false,
      "autoApprove": []
    }
  }
}

有关Kiro MCP配置,请参阅 Kiro IDE文档 或 Kiro CLI文档 了解详情。

对于全局配置,请编辑 ~/.kiro/settings/mcp.json。对于项目特定的配置,请编辑 .kiro/settings/mcp.json 在您的项目目录中。

Windows安装

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

{
  "mcpServers": {
    "awslabs.aws-documentation-mcp-server": {
      "disabled": false,
      "timeout": 60,
      "type": "stdio",
      "command": "uv",
      "args": [
        "tool",
        "run",
        "--from",
        "awslabs.aws-documentation-mcp-server@latest",
        "awslabs.aws-documentation-mcp-server.exe"
      ],
      "env": {
        "FASTMCP_LOG_LEVEL": "ERROR",
        "AWS_DOCUMENTATION_PARTITION": "aws"
      }
    }
  }
}

备注:设置 AWS_DOCUMENTATION_PARTITION 到 aws-cn 查询AWS中国文档,而不是全球AWS文档。

企业网络:如果您位于阻止某些用户代理字符串的公司代理或防火墙后面,请设置 MCP_USER_AGENT 将浏览器的用户代理与允许的字符串相匹配。

或docker成功后 docker build -t mcp/aws-documentation .:

{
  "mcpServers": {
    "awslabs.aws-documentation-mcp-server": {
      "command": "docker",
      "args": [
        "run",
        "--rm",
        "--interactive",
        "--env",
        "FASTMCP_LOG_LEVEL=ERROR",
        "--env",
        "AWS_DOCUMENTATION_PARTITION=aws",
        "mcp/aws-documentation:latest"
      ],
      "env": {},
      "disabled": false,
      "autoApprove": []
    }
  }
}

环境变量

变量 描述 默认值
FASTMCP_LOG_LEVEL 日志记录级别(调试、信息、警告、错误、严重) WARNING
AWS_DOCUMENTATION_PARTITION AWS分区(aws 或 aws-cn) aws
MCP_USER_AGENT HTTP请求的自定义用户代理字符串 基于Chrome的默认值

企业网络支持

对于具有阻止某些User-Agent字符串的代理服务器或防火墙的公司环境:

{
  "env": {
    "MCP_USER_AGENT": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36"
  }
}

基本用法

例子:

  • “查找有关S3存储桶命名规则的文档。引用您的来源”
  • “为页面推荐内容https://docs.aws.amazon.com/AmazonS3/latest/userguide/bucketnamingrules.html"

工具

read_文档

获取AWS文档页面并将其转换为markdown格式。

read_documentation(url: str) -> str

search_文档(仅限全局)

使用官方AWS文档搜索API搜索AWS文档。

search_documentation(ctx: Context, search_phrase: str, limit: int, product_types: Optional[List[str]], guide_types: Optional[List[str]]) -> SearchResponse

read_sections(仅限全局)

获取AWS文档页面的部分内容并将其转换为markdown格式。

read_sections(url: str, section: list[str]) -> list[dict]

search_table(仅全局)

在大型文档表中搜索特定行(例如,服务配额、定价表、支持的型号)。比 read_sections 对于具有数百个表行的页面,将匹配的行作为结构化JSON返回,而不是整个表。

search_table(url: str, section_title: Optional[str], query: str, max_rows: int = 20) -> SearchTableResponse

推荐(仅限全球)

获取AWS文档页面的内容建议。

recommend(url: str) -> list[dict]

获取可用服务(仅限中国)

获取中国地区可用AWS服务的列表。

get_available_services() -> str

发展

要开始在AWS文档MCP服务器上进行开发,请先参阅awslab/MCP DEVELOPER_GUIDE。以下内容均针对AWS文档MCP服务器开发。

运行测试

单元测试: uv run --frozen pytest --cov --cov-branch --cov-report=term-missing 单元测试与集成测试: uv run --frozen pytest --cov --cov-branch --cov-report=term-missing --run-live