Supports OAuth authentication with Auth0 for securing the MCP server deployment, including Dynamic Client Registration and token-based authentication
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Cost Explorer MCP Servercompare this month's AWS costs to last month's"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Cost Explorer MCP Server - Agentcore Runtime Deployment
This directory contains the Cost Explorer MCP Server configured for deployment to Amazon Bedrock Agentcore Runtime with streamable HTTP support on port 8000.
ποΈ Architecture
Original: STDIO-based MCP server for local development
Converted: Streamable HTTP server for Agentcore Runtime deployment
Protocol: MCP (Model Context Protocol)
Transport: Streamable HTTP on port 8000
Deployment: Agentcore Runtime (no Agentcore memory)
π Project Structure
cost-explorer-agentcore-deployment/
βββ mcp_server.py # Main MCP server with streamable HTTP
βββ requirements.txt # Python dependencies
βββ __init__.py # Python package marker
βββ awslabs/ # Cost Explorer implementation
β βββ cost_explorer_mcp_server/
βββ deploy.py # Deployment automation script
βββ test_mcp_client.py # Local testing client
βββ test_remote_client.py # Remote testing client
βββ README.md # This fileπ Quick Start
1. Prerequisites
# Install required tools
pip install bedrock-agentcore-starter-toolkit
pip install mcp[cli]
# Configure AWS credentials
aws configure2. Test Locally First
# Install dependencies
pip install -r requirements.txt
# Start the MCP server locally
python mcp_server.pyIn another terminal:
# Test the local server
python test_mcp_client.py3. Deploy to Agentcore Runtime
# Run the deployment script
python deploy.pyThe script will:
Check prerequisites
Configure the deployment
Deploy to Agentcore Runtime
Save the Agent ARN to
agent_arn.txt
4. Test Remote Deployment
# Set environment variables
export AGENT_ARN="your-agent-arn-from-deployment"
export BEARER_TOKEN="your-oauth-token"
# Test the deployed server
python test_remote_client.pyπ§ Manual Deployment Steps
If you prefer manual deployment:
1. Configure Deployment
agentcore configure -e mcp_server.py --protocol MCPFollow the prompts:
Protocol: MCP
Entry point: mcp_server.py
Authentication: Choose OAuth or Cognito based on your needs
2. Deploy
agentcore launchπ Authentication Setup
Option 1: Cognito User Pool (Recommended)
Create a Cognito User Pool in AWS Console
Configure the user pool for your application
Use the provided credentials during deployment configuration
Option 2: OAuth with Auth0
Set up Auth0 application with Dynamic Client Registration
Configure OAuth settings during deployment
Use Auth0 tokens for authentication
π§ͺ Testing
Local Testing
# Start server
python mcp_server.py
# Test in another terminal
python test_mcp_client.pyRemote Testing
# Set environment variables
export AGENT_ARN="arn:aws:bedrock-agentcore:us-west-2:123456789012:runtime/cost-explorer-xyz123"
export BEARER_TOKEN="your-oauth-token"
# Test deployed server
python test_remote_client.pyπ οΈ Available Tools
The Cost Explorer MCP Server provides these tools:
get_today_date - Get current date for relative queries
get_dimension_values - Get available values for dimensions (SERVICE, REGION, etc.)
get_tag_values - Get available tag values
get_cost_and_usage - Retrieve cost and usage data with filtering
get_cost_and_usage_comparisons - Compare costs between periods
get_cost_comparison_drivers - Analyze cost change drivers
get_cost_forecast - Generate cost forecasts
π° Cost Considerations
Important: Each AWS Cost Explorer API call costs $0.01. The server includes optimizations to minimize API calls, but be aware of potential charges when using the tools extensively.
π Troubleshooting
Local Server Issues
# Check if port 8000 is available
lsof -i :8000
# Check server logs
python mcp_server.pyDeployment Issues
# Check AWS credentials
aws sts get-caller-identity
# Verify agentcore CLI
agentcore --version
# Check deployment status
agentcore statusRemote Connection Issues
Verify BEARER_TOKEN is valid and not expired
Check AGENT_ARN format and encoding
Ensure OAuth/Cognito is properly configured
Verify server deployment status
π References
π Support
For issues with:
MCP Server: Check the original cost-explorer-mcp-server documentation
Agentcore Runtime: Refer to AWS Bedrock Agentcore documentation
Authentication: Check your OAuth/Cognito configuration
AWS Costs: Review AWS Cost Explorer API pricing and usage
This server cannot be installed
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.