An AWS Labs Model Context Protocol (MCP) server for aswlabs Core MCP Server
Project description
Core MCP Server
MCP server that provides a starting point for using MCP servers for AWS through a dynamic proxy server strategy based on role-based environment variables.
Features
Planning and orchestration
- Provides tool for prompt understanding and translation to AWS services
Dynamic Proxy Server Strategy
The Core MCP Server implements a proxy server strategy that dynamically imports and proxies other MCP servers based on role-based environment variables. This allows you to create tailored server configurations for specific use cases or roles without having to manually configure each server.
Role-Based Server Configuration
You can enable specific roles by setting environment variables. Each role corresponds to a logical grouping of MCP servers that are commonly used together for specific use cases.
Important: Environment variable names can be either lowercase with hyphens or uppercase with underscores (e.g.,
aws-foundationorAWS_FOUNDATION). Some systems may not support the hyphenated format, so choose the format that works best for your environment.
| Role Environment Variable | Description | Included MCP Servers |
|---|---|---|
aws-foundation |
AWS knowledge and API servers | aws-knowledge-server, aws-api-server |
dev-tools |
Development tools | git-repo-research-server, code-doc-gen-server, aws-knowledge-server |
ci-cd-devops |
CI/CD and DevOps | cdk-server, cfn-server |
container-orchestration |
Container management | eks-server, ecs-server, finch-server |
serverless-architecture |
Serverless development | serverless-server, lambda-tool-server, stepfunctions-tool-server, sns-sqs-server |
analytics-warehouse |
Data analytics and warehousing | redshift-server, timestream-for-influxdb-server, dataprocessing-server, syntheticdata-server |
data-platform-eng |
Data platform engineering | dynamodb-server, s3-tables-server, dataprocessing-server |
frontend-dev |
Frontend development | frontend-server, nova-canvas-server |
solutions-architect |
Solution architecture | diagram-server, pricing-server, cost-explorer-server, syntheticdata-server, aws-knowledge-server |
finops |
Financial operations | cost-explorer-server, pricing-server, cloudwatch-server, billing-cost-management-server |
monitoring-observability |
Monitoring and observability | cloudwatch-server, cloudwatch-appsignals-server, prometheus-server, cloudtrail-server |
caching-performance |
Caching and performance | elasticache-server, memcached-server |
security-identity |
Security and identity | iam-server, support-server, well-architected-security-server |
sql-db-specialist |
SQL database specialist | postgres-server, mysql-server, aurora-dsql-server, redshift-server |
nosql-db-specialist |
NoSQL database specialist | dynamodb-server, documentdb-server, keyspaces-server, neptune-server |
timeseries-db-specialist |
Time series database specialist | timestream-for-influxdb-server, prometheus-server, cloudwatch-server |
messaging-events |
Messaging and events | sns-sqs-server, mq-server |
healthcare-lifesci |
Healthcare and life sciences | healthomics-server |
Benefits of the Proxy Server Strategy
- Simplified Configuration: Enable multiple servers with a single environment variable
- Reduced Duplication: Servers are imported only once, even if needed by multiple roles
- Tailored Experience: Create custom server configurations for specific use cases
- Flexible Deployment: Easily switch between different server configurations
Usage Notes
- If no roles are enabled, the Core MCP Server will still provide its basic functionality (prompt_understanding) but won't import any additional servers
- You can enable multiple roles simultaneously to create a comprehensive server configuration
- The proxy strategy ensures that each server is imported only once, even if it's needed by multiple roles
Note: Not all MCP servers for AWS are represented in these logical groupings. For specific use cases, you may need to install additional MCP servers directly. See the main README for a complete list of available MCP servers.
Prerequisites
- Python 3.12 or higher
- uv - Fast Python package installer and resolver
- AWS credentials configured with Bedrock access
- Node.js (for UVX installation support)
Installation
| Kiro | Cursor | VS Code |
|---|---|---|
Configure the MCP server in your MCP client configuration (e.g., for Kiro, edit ~/.kiro/settings/mcp.json):
{
"mcpServers": {
"awslabs.core-mcp-server": {
"command": "uvx",
"args": [
"awslabs.core-mcp-server@latest"
],
"env": {
"FASTMCP_LOG_LEVEL": "ERROR",
"aws-foundation": "true",
"solutions-architect": "true"
// Add other roles as needed
},
"autoApprove": [],
"disabled": false
}
}
}
To enable specific role-based server configurations, add the corresponding environment variables to the env section of your MCP client configuration. For example, the configuration above enables the aws-foundation and solutions-architect roles, which will import the corresponding MCP servers.
Windows Installation
For Windows users, the MCP server configuration format is slightly different:
{
"mcpServers": {
"awslabs.core-mcp-server": {
"disabled": false,
"timeout": 60,
"type": "stdio",
"command": "uv",
"args": [
"tool",
"run",
"--from",
"awslabs.core-mcp-server@latest",
"awslabs.core-mcp-server.exe"
],
"env": {
"FASTMCP_LOG_LEVEL": "ERROR",
"AWS_PROFILE": "your-aws-profile",
"AWS_REGION": "us-east-1",
"aws-foundation": "true",
"solutions-architect": "true"
// Add other roles as needed
}
}
}
}
or docker after a successful docker build -t awslabs/core-mcp-server .:
{
"mcpServers": {
"awslabs.core-mcp-server": {
"command": "docker",
"args": [
"run",
"--rm",
"--interactive",
"--env",
"FASTMCP_LOG_LEVEL=ERROR",
"--env",
"aws-foundation=true",
"--env",
"solutions-architect=true",
"awslabs/core-mcp-server:latest"
],
"env": {},
"disabled": false,
"autoApprove": []
}
}
}
Tools and Resources
The server exposes the following tools through the MCP interface:
prompt_understanding- Helps to provide guidance and planning support when building AWS Solutions for the given prompt
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file awslabs_core_mcp_server-1.0.23.tar.gz.
File metadata
- Download URL: awslabs_core_mcp_server-1.0.23.tar.gz
- Upload date:
- Size: 408.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
ca90de25c6c8bddf40d9c7f85547616891bf969c08abb2b80edbe801e2bc7a26
|
|
| MD5 |
ec8f99a0202095e5dcc1d2d9202eb44c
|
|
| BLAKE2b-256 |
ff63fcc121c66620a0115e49685b314695e53ed59b190d28858be1f4ecb5c1f2
|
Provenance
The following attestation bundles were made for awslabs_core_mcp_server-1.0.23.tar.gz:
Publisher:
release.yml on awslabs/mcp
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
awslabs_core_mcp_server-1.0.23.tar.gz -
Subject digest:
ca90de25c6c8bddf40d9c7f85547616891bf969c08abb2b80edbe801e2bc7a26 - Sigstore transparency entry: 946966635
- Sigstore integration time:
-
Permalink:
awslabs/mcp@0d0fc3fc52eec5acda0814e9c5547794be505951 -
Branch / Tag:
refs/tags/2026.02.20260213033417 - Owner: https://github.com/awslabs
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@0d0fc3fc52eec5acda0814e9c5547794be505951 -
Trigger Event:
push
-
Statement type:
File details
Details for the file awslabs_core_mcp_server-1.0.23-py3-none-any.whl.
File metadata
- Download URL: awslabs_core_mcp_server-1.0.23-py3-none-any.whl
- Upload date:
- Size: 22.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
965233a13d5b67db9f8f90097e82f46f5d284db1574983635cc202a58c9447ee
|
|
| MD5 |
e24589b1e2fe480b793d468ca7493f13
|
|
| BLAKE2b-256 |
7a5d449662f32237d10ea654f4bccc392f0fcc72713e3105dee1d28570b3be9d
|
Provenance
The following attestation bundles were made for awslabs_core_mcp_server-1.0.23-py3-none-any.whl:
Publisher:
release.yml on awslabs/mcp
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
awslabs_core_mcp_server-1.0.23-py3-none-any.whl -
Subject digest:
965233a13d5b67db9f8f90097e82f46f5d284db1574983635cc202a58c9447ee - Sigstore transparency entry: 946966637
- Sigstore integration time:
-
Permalink:
awslabs/mcp@0d0fc3fc52eec5acda0814e9c5547794be505951 -
Branch / Tag:
refs/tags/2026.02.20260213033417 - Owner: https://github.com/awslabs
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@0d0fc3fc52eec5acda0814e9c5547794be505951 -
Trigger Event:
push
-
Statement type: