aws-documentation-mcp-server
awslabs/mcp/src/aws-documentation-mcp-server
- Type
- MCP server
- Scanned
- Oct 29, 2026
- Version
- e36627a09417
- Files read
- 40
This MCP server provides tools for AI agents to search, read, extract sections or tables, and get content recommendations from public AWS documentation. It has minimal local risk because it only makes outbound HTTPS requests to AWS documentation domains and APIs without accessing local files, credentials, or shell commands.
What it can reach
- Network
- Makes outbound HTTP/HTTPS requests to AWS documentation domains (docs.aws.amazon.com, awsdocs-neuron.readthedocs-hosted.com, docs.amazonaws.cn) and AWS documentation search and recommendation APIs (proxy.search.docs.aws.com, api.contentrecs.docs.aws.com).
Findings
-
LowUnencoded URL parameter in recommend API request
src/aws-documentation-mcp-server/awslabs/aws_documentation_mcp_server/server_aws.py:699
In the recommend tool, the user- or agent-supplied url argument is interpolated directly into the query string without URL-encoding or domain validation. If the URL contains characters such as '&' or '#', it can inject additional query parameters into the request sent to the AWS recommendations API or truncate the session parameter.
Fix: Validate the URL against the allowed domain list and URL-encode url_str using urllib.parse.quote(url_str, safe='') (or pass params={'path': url_str, 'session': SESSION_UUID} to httpx).