MCP servers / awslabs.aws-documentation-mcp-server

MCP tool changes

awslabs.aws-documentation-mcp-server

2 of its last 5 updates changed what the agent reads: 2 tool descriptions rewritten, up to 1.2.3.

PyPI package · PyPI page · recorded on 24 October 2026 on a clean machine with placeholder settings; only tools/list was sent. A changed description is not a vulnerability. Method and limits.

Release by release

1.2.2 → 1.2.3

patch release, 13 October 2026

No tool definition changed.

1.2.1 → 1.2.2

patch release, 30 September 2026
search_table: description changed
Before (1.2.1)
Search for specific rows in a large documentation table. Use this tool when you need specific rows from a large documentation table (e.g., service quotas, pricing tables, supported models lists). Returns matching rows as JSON instead of dumping the entire table. This is more efficient than read_sections for pages with hundreds of table rows. If read_sections or read_documentation indicates a table was truncated, use this tool to find the specific rows you need. ## Section Title - If you know the exact section title, provide it for precision - If unsure, omit section_title — the tool will search all tables on the page - Use section titles from search_documentation results (TOC) or read_documentation output - If the section title is wrong, the hint field will list available sections ## URL Requirements - Must be from the docs.aws.amazon.com domain - Must end with .html ## Example Usage ``` # With section title (searches all tables in that section): search_table( url='https://docs.aws.amazon.com/general/latest/gr/bedrock.html', section_title='Amazon Bedrock service quotas', query='Titan Text Embeddings V2', ) # Without section title (searches all tables on the page): search_table( url='https://docs.aws.amazon.com/general/latest/gr/bedrock.html', query='Claude 3 Sonnet requests', ) ``` ## Response Format Returns a SearchTableResponse with: - tables_searched: Number of tables searched - tables_with_matches: Number of tables containing matching rows - hint: Guidance message when no matches found, section not found, or no tables on page - error: Error message on HTTP/transport failures only - results: Array of table result objects, each with: - table_heading: The sub-heading above the table (if any) - columns: Column headers for that table - parent_columns: (optional) For rowspan/nested tables, which columns are group headers - child_columns: (optional) For rowspan/nested tables, which columns are nested under groups - total_rows: Total rows (or groups, for nested tables) in that table - matched_rows: Number of rows/groups matching the query per table - showing: Number of rows/groups returned per table (capped by max_rows per table) - rows: Array of matching row objects. For flat tables: {column → value}. For nested tables: {parent_col → value, ..., "rows": [{child_col → value}, ...]} Args: ctx: MCP context for logging and error handling url: AWS documentation page URL (must end with .html) section_title: The section heading containing the table (optional — omit to search all tables on the page) query: Search term to filter rows (all words must match, case-insensitive) max_rows: Maximum matching rows to return per table (default 20) Returns: SearchTableResponse with matching rows grouped by table
After (1.2.2)
Search for specific rows in a large documentation table. Use this tool when you need specific rows from a large documentation table (e.g., service quotas, pricing tables, supported models lists). Returns matching rows as JSON instead of dumping the entire table. This is more efficient than read_sections for pages with hundreds of table rows. If read_sections or read_documentation indicates a table was truncated, use this tool to find the specific rows you need. ## Section Title - If you know the exact section title, provide it for precision - If unsure, omit section_title — the tool will search all tables on the page - Use section titles from search_documentation results (TOC) or read_documentation output - If the section title is wrong, the hint field will list available sections ## URL Requirements - Must be from the docs.aws.amazon.com domain - Must end with .html ## Example Usage ``` # With section title (searches all tables in that section): search_table( url='https://docs.aws.amazon.com/general/latest/gr/bedrock.html', section_title='Amazon Bedrock service quotas', query='Titan Text Embeddings V2', ) # Without section title (searches all tables on the page): search_table( url='https://docs.aws.amazon.com/general/latest/gr/bedrock.html', query='Claude 3 Sonnet requests', ) ``` ## Response Format Returns a SearchTableResponse with: - tables_searched: Number of tables searched - tables_with_matches: Number of tables containing matching rows - hint: Guidance message when no matches found, section not found, or no tables on page - results: Array of table result objects, each with: - table_heading: The sub-heading above the table (if any) - columns: Column headers for that table - parent_columns: (optional) For rowspan/nested tables, which columns are group headers - child_columns: (optional) For rowspan/nested tables, which columns are nested under groups - total_rows: Total rows (or groups, for nested tables) in that table - matched_rows: Number of rows/groups matching the query per table - showing: Number of rows/groups returned per table (capped by max_rows per table) - rows: Array of matching row objects. For flat tables: {column → value}. For nested tables: {parent_col → value, ..., "rows": [{child_col → value}, ...]} Args: ctx: MCP context for logging and error handling url: AWS documentation page URL (must end with .html) section_title: The section heading containing the table (optional — omit to search all tables on the page) query: Search term to filter rows (all words must match, case-insensitive) max_rows: Maximum matching rows to return per table (default 20) Returns: SearchTableResponse with matching rows grouped by table

1.2.0 → 1.2.1

patch release, 8 September 2026

No tool definition changed.

1.1.30 → 1.2.0

minor release, 26 August 2026
recommend: description and input schema changed
Before (1.1.30)
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
After (1.2.0)
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 three categories: 1. **New**: Recently added pages within the same AWS service - useful for finding newly released features 2. **Similar**: Pages covering similar topics to the current page 3. **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 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

1.1.29 → 1.1.30

patch release, 10 August 2026

No tool definition changed.

Releases tried: 1.1.29 (2026-08-05); 1.1.30 (2026-08-10); 1.2.0 (2026-08-26); 1.2.1 (2026-09-08); 1.2.2 (2026-09-30); 1.2.3 (2026-10-13).

Tools in 1.2.3

The pin is the SHA-256 of the tool's name, description and input schema, as verfy.lock records it. The same pin in your lock means your agent reads this exact definition.

Tools in 1.2.3
ToolDescriptionPin
read_documentationFetch 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 ## Large Tables Tables with more than 20 rows are automatically truncated to show only the header and 5 sample rows, along with a hint to use the `search_table` tool. Use `search_table` to filter and retrieve specific rows from large tables (e.g., service quotas, IAM actions). ## 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 cd90a186161e
read_sectionsExtract specific sections from AWS documentation pages by title. Retrieves a page, converts to markdown, and returns only matching sections. Section matching is case-insensitive and handles whitespace differences. ## URL Requirements - Must end with .html ## Large Tables Tables with more than 20 rows are automatically truncated to show only the header and 5 sample rows, along with a hint to use the `search_table` tool. Use `search_table` to filter and retrieve specific rows from large tables (e.g., service quotas, IAM actions). ## Read Sections Tips - Use exact section titles from search results 'sections' field when available - Section matching is case-insensitive and handles whitespace differences - Include multiple related sections in one call for comprehensive coverage ## Example Usage ``` # If query is about S3 bucket naming rules: # Available sections: ['General purpose buckets naming rules', 'Example general purpose bucket names', 'Best practices', 'Creating a bucket that uses a GUID in the bucket name'] # Read these specific sections: read_sections( url='https://docs.aws.amazon.com/s3/latest/userguide/bucketnamingrules.html', section_titles=['General purpose buckets naming rules', 'Best practices'], ) # If query is about Python Lambda function examples: # Available sections: ['Example Python Lambda function code', 'Handler naming conventions', 'Using the Lambda event object', 'Accessing and using the Lambda context object'. 'Valid handler signatures for Python handlers', 'Returning a value', 'Using the AWS SDK for Python (Boto3) in your handler', 'Accessing environment variables, 'Code best practices for Python Lambda functions'] # Read these specific sections: read_sections( url='https://docs.aws.amazon.com/lambda/latest/dg/python-handler.html', section_titles=[ 'Example Python Lambda function code', 'Code best practices for Python Lambda functions', ], ) ``` Args: ctx: MCP context for logging and error handling url: URL of the AWS documentation page to read section_titles: List of section titles to extract Returns: Filtered markdown content containing only the requested sections 79b0d4afc20d
search_tableSearch for specific rows in a large documentation table. Use this tool when you need specific rows from a large documentation table (e.g., service quotas, pricing tables, supported models lists). Returns matching rows as JSON instead of dumping the entire table. This is more efficient than read_sections for pages with hundreds of table rows. If read_sections or read_documentation indicates a table was truncated, use this tool to find the specific rows you need. ## Section Title - If you know the exact section title, provide it for precision - If unsure, omit section_title — the tool will search all tables on the page - Use section titles from search_documentation results (TOC) or read_documentation output - If the section title is wrong, the hint field will list available sections ## URL Requirements - Must be from the docs.aws.amazon.com domain - Must end with .html ## Example Usage ``` # With section title (searches all tables in that section): search_table( url='https://docs.aws.amazon.com/general/latest/gr/bedrock.html', section_title='Amazon Bedrock service quotas', query='Titan Text Embeddings V2', ) # Without section title (searches all tables on the page): search_table( url='https://docs.aws.amazon.com/general/latest/gr/bedrock.html', query='Claude 3 Sonnet requests', ) ``` ## Response Format Returns a SearchTableResponse with: - tables_searched: Number of tables searched - tables_with_matches: Number of tables containing matching rows - hint: Guidance message when no matches found, section not found, or no tables on page - results: Array of table result objects, each with: - table_heading: The sub-heading above the table (if any) - columns: Column headers for that table - parent_columns: (optional) For rowspan/nested tables, which columns are group headers - child_columns: (optional) For rowspan/nested tables, which columns are nested under groups - total_rows: Total rows (or groups, for nested tables) in that table - matched_rows: Number of rows/groups matching the query per table - showing: Number of rows/groups returned per table (capped by max_rows per table) - rows: Array of matching row objects. For flat tables: {column → value}. For nested tables: {parent_col → value, ..., "rows": [{child_col → value}, ...]} Args: ctx: MCP context for logging and error handling url: AWS documentation page URL (must end with .html) section_title: The section heading containing the table (optional — omit to search all tables on the page) query: Search term to filter rows (all words must match, case-insensitive) max_rows: Maximum matching rows to return per table (default 20) Returns: SearchTableResponse with matching rows grouped by table b8cc8e5a36f0
search_documentationSearch 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 - Use guide_type and product_type filters found from a SearchResponse's "facets" property: - Filter only for broad search queries with patterns: - "What is [service]?" -> product_types: ["Amazon Simple Storage Service"] - "How to use <service 1> with <service 2>?" -> product_types: [<service 1>, <service 2>] - "[service] getting started" -> product_types: [<service>] + guide_types: ["User Guide, "Developer Guide"] - "API reference for [service]" -> product_types: [<service>] + guide_types: ["API Reference"] ## Result Interpretation Each SearchResponse includes: - search_results: List of documentation pages, each with: - 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) - recommended_sections: A subset of section titles ranked as most relevant to the query, in rank order (when available) - Pass these directly to read_sections for targeted content extraction - sections: All available section titles for this page (when available) - individual titles can be used with the read_sections tool for targeted content extraction - metadata: Optional per-result context (when available). May include: - additional_urls: Other doc URLs related to the same result `{url, section_title, section_anchor}` - pass `section_title` to read_sections to fetch content; use `url#section_anchor` when citing - facets: Available filters (product_types, guide_types) for refining searches - query_id: Unique identifier for this search session - metadata: Optional response-level context (when available). May include: - discovered_services: AWS services inferred from the query that may be relevant beyond the top results - related_tasks: Related operations or workflows the user may want to follow up on, each with its own doc URLs - relationships: Named connections between information in the search results, useful for understanding how the returned topics relate to each other Args: ctx: MCP context for logging and error handling search_phrase: Search phrase to use search_intent: The intent behind the search requested by the user limit: Maximum number of results to return product_types: Filter by AWS product/service guide_types: Filter by guide type Returns: List of search results with URLs, titles, query ID, context snippets, and facets for filtering 24818535e4c1
recommendGet 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 three categories: 1. **New**: Recently added pages within the same AWS service - useful for finding newly released features 2. **Similar**: Pages covering similar topics to the current page 3. **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 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 4b367ccfca70

Lock these tools

Pin what awslabs.aws-documentation-mcp-server serves you today, commit the lock, and a pull request fails when a tool changes, with the text before and after. Pin the package version in your MCP config as well.

$ pip install verfy
$ verfy lock check --update   # shows each tool, then writes verfy.lock
$ git add verfy.lock
# .github/workflows/verfy.yml, after actions/checkout
- uses: anvarbekovjavohir277-dot/verfy-action@v1

Maintain this server? Run the same check on your releases and add the Locked by Verfy badge to your README.