Skip to main content

Core MCP Server

Core MCP Server

MCP server that provides a starting point for using AWS MCP servers 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:

Role Environment VariableDescriptionIncluded MCP Servers
aws-foundationAWS knowledge and API serversaws-knowledge-server, aws-api-server
dev-toolsDevelopment toolsgit-repo-research-server, code-doc-gen-server, aws-knowledge-server
ci-cd-devopsCI/CD and DevOpscdk-server, cfn-server
container-orchestrationContainer managementeks-server, ecs-server, finch-server
serverless-architectureServerless developmentserverless-server, lambda-tool-server, stepfunctions-tool-server, sns-sqs-server
analytics-warehouseData analytics and warehousingredshift-server, timestream-for-influxdb-server, dataprocessing-server, syntheticdata-server
data-platform-engData platform engineeringdynamodb-server, s3-tables-server, dataprocessing-server
frontend-devFrontend developmentfrontend-server, nova-canvas-server
solutions-architectSolution architecturediagram-server, pricing-server, cost-explorer-server, syntheticdata-server, aws-knowledge-server
finopsFinancial operationscost-explorer-server, pricing-server, cloudwatch-server, billing-cost-management-server
monitoring-observabilityMonitoring and observabilitycloudwatch-server, cloudwatch-appsignals-server, prometheus-server, cloudtrail-server
caching-performanceCaching and performanceelasticache-server, memcached-server
security-identitySecurity and identityiam-server, support-server, well-architected-security-server
sql-db-specialistSQL database specialistpostgres-server, mysql-server, aurora-dsql-server, redshift-server
nosql-db-specialistNoSQL database specialistdynamodb-server, documentdb-server, keyspaces-server, neptune-server
timeseries-db-specialistTime series database specialisttimestream-for-influxdb-server, prometheus-server, cloudwatch-server
messaging-eventsMessaging and eventssns-sqs-server, mq-server
healthcare-lifesciHealthcare and life scienceshealthomics-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 AWS MCP servers 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

CursorVS Code
Install MCP ServerInstall on VS Code

Configure the MCP server in your MCP client configuration (e.g., for Amazon Q Developer CLI, edit ~/.aws/amazonq/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