Skip to main content
Glama
Joseph19820124

AWS Documentation MCP Server

AWS Documentation MCP Server

Model Context Protocol (MCP) server for AWS Documentation

This MCP server provides tools to access AWS documentation, search for content, and get recommendations.

Features

  • Read Documentation: Fetch and convert AWS documentation pages to markdown format

  • Search Documentation: Search AWS documentation using the official search API (global only)

  • Recommendations: Get content recommendations for AWS documentation pages (global only)

  • Get Available Services List: Get a list of available AWS services in China regions (China only)

Related MCP server: OpenTelemetry Documentation MCP Server

Prerequisites

Installation Requirements

  1. Install uv from Astral or the GitHub README

  2. Install Python 3.10 or newer using uv python install 3.10 (or a more recent version)

Installation

Install MCP Server

Configure the MCP server in your MCP client configuration (e.g., for Amazon Q Developer CLI, edit ~/.aws/amazonq/mcp.json):

{
  "mcpServers": {
    "awslabs.aws-documentation-mcp-server": {
      "command": "uvx",
      "args": ["awslabs.aws-documentation-mcp-server@latest"],
      "env": {
        "FASTMCP_LOG_LEVEL": "ERROR",
        "AWS_DOCUMENTATION_PARTITION": "aws"
      },
      "disabled": false,
      "autoApprove": []
    }
  }
}

Note: Set AWS_DOCUMENTATION_PARTITION to aws-cn to query AWS China documentation instead of global AWS documentation.

or docker after a successful 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": []
    }
  }
}

Basic Usage

Example:

AWS Documentation MCP Demo

Tools

read_documentation

Fetches an AWS documentation page and converts it to markdown format.

read_documentation(url: str) -> str

search_documentation (global only)

Searches AWS documentation using the official AWS Documentation Search API.

search_documentation(search_phrase: str, limit: int) -> list[dict]

recommend (global only)

Gets content recommendations for an AWS documentation page.

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

get_available_services (China only)

Gets a list of available AWS services in China regions.

get_available_services() -> str

Available Tools

3 tools
read_documentationA

Fetch and convert an AWS documentation page to markdown format.

## Usage

This tool retrieves the content of an AWS documentation page and converts it to markdown format.
For long documents, you can make multiple calls with different start_index values to retrieve
the entire content in chunks.

## URL Requirements

- Must be from the docs.aws.amazon.com domain
- Must end with .html

## Example URLs

- https://docs.aws.amazon.com/AmazonS3/latest/userguide/bucketnamingrules.html
- https://docs.aws.amazon.com/lambda/latest/dg/lambda-invocation.html

## Output Format

The output is formatted as markdown text with:
- Preserved headings and structure
- Code blocks for examples
- Lists and tables converted to markdown format

## Handling Long Documents

If the response indicates the document was truncated, you have several options:

1. **Continue Reading**: Make another call with start_index set to the end of the previous response
2. **Stop Early**: For very long documents (>30,000 characters), if you've already found the specific information needed, you can stop reading

Args:
    ctx: MCP context for logging and error handling
    url: URL of the AWS documentation page to read
    max_length: Maximum number of characters to return
    start_index: On return output starting at this character index

Returns:
    Markdown content of the AWS documentation
ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesURL of the AWS documentation page to read
max_lengthNoMaximum number of characters to return.
start_indexNoOn return output starting at this character index, useful if a previous fetch was truncated and more content is required.

TDQS

A4.1/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided, so description carries full burden. It covers conversion to markdown, chunking behavior, and URL constraints. However, lacks details on error handling, rate limits, or authentication.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Well-structured with headings, bullet points, and examples. Every section serves a purpose without unnecessary fluff. Could be slightly shorter but remains clear.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Covers key aspects: URL requirements, output format, handling long documents. Missing some edge cases but sufficient for typical usage.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

100% schema coverage provides baselines. Description adds value by explaining how to use start_index for continuation, which is beyond the schema's description.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool fetches and converts an AWS documentation page to markdown, with specific URL requirements and examples. It distinguishes from sibling tools (recommend, search_documentation) by focusing on retrieving a specific page.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Provides clear guidance on handling long documents with start_index and continuation strategies. Lacks explicit 'when not to use' but the context and sibling names imply appropriate use cases.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

recommendA

Get content recommendations for an AWS documentation page.

## Usage

This tool provides recommendations for related AWS documentation pages based on a given URL.
Use it to discover additional relevant content that might not appear in search results.

## Recommendation Types

The recommendations include four categories:

1. **Highly Rated**: Popular pages within the same AWS service
2. **New**: Recently added pages within the same AWS service - useful for finding newly released features
3. **Similar**: Pages covering similar topics to the current page
4. **Journey**: Pages commonly viewed next by other users

## When to Use

- After reading a documentation page to find related content
- When exploring a new AWS service to discover important pages
- To find alternative explanations of complex concepts
- To discover the most popular pages for a service
- To find newly released information by using a service's welcome page URL and checking the **New** recommendations

## Finding New Features

To find newly released information about a service:
1. Find any page belong to that service, typically you can try the welcome page
2. Call this tool with that URL
3. Look specifically at the **New** recommendation type in the results

## Result Interpretation

Each recommendation includes:
- url: The documentation page URL
- title: The page title
- context: A brief description (if available)

Args:
    ctx: MCP context for logging and error handling
    url: URL of the AWS documentation page to get recommendations for

Returns:
    List of recommended pages with URLs, titles, and context
ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesURL of the AWS documentation page to get recommendations for

TDQS

A4.4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries full burden. It describes four recommendation types (Highly Rated, New, Similar, Journey), how to interpret results (url, title, context), and specific usage context (e.g., using welcome pages). It does not disclose side effects or rate limits, but the behavior is well-explained.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is well-structured with sections (Usage, Recommendation Types, When to Use, Finding New Features, Result Interpretation) and bullet points. It is somewhat long but every sentence adds value and is front-loaded with the core purpose.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no output schema, the description explains the return structure (url, title, context) and the four recommendation categories. The tool has only one parameter and is simple, so the description is sufficiently complete for an agent to understand and invoke it correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% (only param 'url' with description). The description reinforces the param's meaning by specifying it as an 'AWS documentation page URL' and provides usage examples (e.g., welcome page). It adds value beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description explicitly states 'Get content recommendations for an AWS documentation page' and distinguishes from sibling tools (read_documentation, search_documentation) by focusing on recommendations based on a URL.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides a 'When to Use' section with concrete scenarios (after reading a page, exploring a new service, finding new features) and includes a step-by-step guide for finding new features. It does not explicitly mention when not to use or compare to alternatives, but the context is clear.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

search_documentationA

Search AWS documentation using the official AWS Documentation Search API.

## Usage

This tool searches across all AWS documentation for pages matching your search phrase.
Use it to find relevant documentation when you don't have a specific URL.

## Search Tips

- Use specific technical terms rather than general phrases
- Include service names to narrow results (e.g., "S3 bucket versioning" instead of just "versioning")
- Use quotes for exact phrase matching (e.g., "AWS Lambda function URLs")
- Include abbreviations and alternative terms to improve results

## Result Interpretation

Each result includes:
- rank_order: The relevance ranking (lower is more relevant)
- url: The documentation page URL
- title: The page title
- context: A brief excerpt or summary (if available)

Args:
    ctx: MCP context for logging and error handling
    search_phrase: Search phrase to use
    limit: Maximum number of results to return

Returns:
    List of search results with URLs, titles, and context snippets
ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoMaximum number of results to return
search_phraseYesSearch phrase to use

TDQS

A4.6/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations, so description carries the burden. It describes the API source and result structure but does not explicitly state it's read-only or idempotent. However, as a search tool, this is implied. Adds value with result interpretation.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Well-structured with sections (Usage, Search Tips, Result Interpretation). Each section is meaningful. Slightly lengthy but no wasted sentences.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's complexity (search across all docs) and no output schema, the description fully explains input parameters, result format, and usage tips. Sufficient for correct invocation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema covers 100% of parameters, but the description adds search tips for search_phrase and explains limit's default and range. Also describes return fields, adding meaning beyond schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it searches AWS documentation using the official API. It distinguishes from read_documentation (which likely uses a URL) and recommend. The verb 'search' and resource 'documentation' are specific.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicitly says 'Use it to find relevant documentation when you don't have a specific URL.' Provides search tips (specific terms, service names, quotes) that guide effective use.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

TDQS

A4.4/5.0
Disambiguation5/5

Each tool has a distinct purpose: reading a specific URL, getting recommendations, and searching across documentation. There is no overlap or ambiguity.

Naming Consistency4/5

Tool names mostly follow a verb_noun pattern ('read_documentation', 'search_documentation'), but 'recommend' is a verb without a noun, making it slightly inconsistent.

Tool Count5/5

With 3 tools covering read, search, and recommend, the count is well-scoped for a documentation server. Neither too few nor too many.

Completeness4/5

Core functionality is covered, but a tool to navigate documentation structure (e.g., list service guides) is missing, though not critical.

Maintenance

ActivityInactive
ResponsivenessNo issues

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

Related MCP Servers

  • A
    license
    A
    quality
    D
    maintenance
    Provides tools to access AWS documentation, search for content, and get recommendations for both global and China AWS regions.
    3
    Apache 2.0
  • A
    license
    A
    quality
    D
    maintenance
    Enables access to OpenTelemetry documentation by fetching and converting pages to markdown format and searching content using Google Custom Search. Provides comprehensive documentation lookup and search capabilities for OpenTelemetry concepts, instrumentation, and configuration.
    2
    3
    Apache 2.0
  • -
    license
    A
    quality
    Not graded
    maintenance
    Enables users to access, search, and get recommendations from AWS documentation through natural language queries. Supports both global AWS documentation and AWS China documentation with tools to fetch pages, search content, and discover related resources.
    3

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/Joseph19820124/aws-doc-sse'

If you have feedback or need assistance with the MCP directory API, please join our Discord server