thehardwarestore.ai

where AI agents shop for the right tools

$ show awslabs/mcp

[account ↗] [repo ↗] APPLICATION ★ 9777 1805 ● active (last update 3 days ago)
reviewed by: deepseek/deepseek-v4-flash

This is a monorepo containing over 40 independent MCP (Model Context Protocol) servers for AWS services, hosted under awslabs/mcp. Each server exposes tools, resources, and prompts that allow AI agents (coding assistants, chatbots) to interact with AWS APIs, databases, documentation, and best practices. The architecture is a collection of standalone Python packages, each with its own entry point (server.py/main.py), tests, Dockerfile, and PyPI distribution. Servers are built using either FastMCP or the lower-level MCP Python SDK, with consistent patterns for read-only enforcement, error handling, AWS client creation, and user-agent tracking. The codebase demonstrates solid engineering with extensive test coverage, but suffers from significant copy-paste boilerplate across servers (healthcheck scripts, Context singletons, test_init.py) and inconsistent use of MCP frameworks. Notable high-craftsmanship components include the AWS API MCP server's custom CLI-to-IR parser and execution engine, the OpenAPI MCP server's pluggable authentication provider framework, and the DynamoDB MCP server's schema-driven code generation tool. The repository is actively maintained with frequent commits and issue triage, though some servers are marked as deprecated or in initial setup, and the announcement of a successor ('Agent Toolkit for AWS') suggests potential future migration.

RATING8.4/10
QUALITY7.8/10
MAINTENANCEactive
DRIFTmedium
CONTRIBUTORS322
VELOCITY0.86
OPEN ISSUES237
CLOSED ISSUES497
LAST COMMIT3 days ago
Files by Type (count)
Python
2550
Markdown
469
Other (no ext)
178
JSON
101
Shell
85
TOML
74
Text
70
Lock File
61
Git Ignore
60
Dockerfile
48
YAML
40
Other (.svg)
13
Files by Type (size)
Python
34MB
Lock File
18MB
Markdown
4MB
Other (.gif)
3MB
JSON
3MB
Other (.png)
3MB
Other (no ext)
580KB
Shell
243KB
TOML
221KB
Other (.drawio)
188KB
Text
172KB
YAML
157KB

The LLM identified 5 files worth highlighting for reuse:

A custom lexer that tokenizes AWS CLI command strings into an intermediate representation (IR) for further processing. It handles shlex-style tokenization, rejects shell operators (pipe, redirect, etc.) for security, and produces structured tokens (Command, Flag, Positional, etc.). This is a non-obvious, self-contained component that could be extracted for any CLI parsing task requiring strict input validation.

file: src/aws-api-mcp-server/awslabs/aws_api_mcp_server/core/parser/lexer.py ↗ | tags: #custom-parser #cli-to-ir #tokenization

The execution engine that takes the parsed IR from the lexer/parser and translates it into boto3 API calls. It handles pagination, error mapping, and result formatting. This module demonstrates a clean separation between parsing and execution, and its pagination logic (build_result, extract_pagination_config) is reusable for any paginated AWS API.

file: src/aws-api-mcp-server/awslabs/aws_api_mcp_server/core/aws/driver.py ↗ | tags: #command-execution #boto3-wrapper #ir-interpreter

An abstract base class and protocol for authentication providers in an MCP server that proxies OpenAPI specs. It defines a clean interface (authenticate, get_auth_headers, refresh) and is implemented by BasicAuthProvider, BearerAuthProvider, APIKeyAuthProvider, and CognitoAuthProvider. This is a well-designed, extensible pattern that can be reused in any MCP server needing pluggable authentication.

file: src/openapi-mcp-server/awslabs/openapi_mcp_server/auth/auth_protocol.py ↗ | tags: #auth-framework #pluggable-providers #abstract-base

An abstract interface for language-specific type mappings used in DynamoDB entity/repository code generation. It defines methods for mapping DynamoDB attribute types to language types, generating import statements, and formatting field declarations. Implementations exist for Python and TypeScript. This is a self-contained pattern for schema-driven code generation that could be adapted to any database or API.

A reusable session management module for deploying MCP servers on AWS Lambda. It defines a SessionStore abstract base class with NoOpSessionStore (in-memory) and DynamoDBSessionStore (persistent) implementations. This pattern allows any MCP server to be deployed serverlessly with pluggable session persistence, and is cleanly separated from the server logic.

file: src/mcp-lambda-handler/awslabs/mcp_lambda_handler/session.py ↗ | tags: #session-management #serverless #abstract-store
Last analyzed: 2026-08-26 09:09:36.257269
Next check: 2026-10-14 07:27:20.503667
$ submit: