Skip to main content
Glama

Lambda Performance MCP Server

by jghidalgo

Lambda Performance MCP Server (Node.js)

A comprehensive Model Context Protocol (MCP) server for analyzing AWS Lambda performance, tracking cold starts, and providing optimization recommendations. Built with Node.js and the AWS SDK v3.

Features

Performance Analysis

  • Comprehensive Metrics: Duration, memory usage, error rates, invocation counts
  • Cold Start Tracking: Detailed analysis of cold start patterns and frequency
  • Real-time Monitoring: Live performance metrics and alerts
  • Cost Analysis: Detailed cost breakdown and optimization opportunities

Advanced Analytics

  • Percentile Analysis: P50, P90, P95, P99 duration metrics
  • Memory Utilization: Right-sizing recommendations based on actual usage
  • Error Pattern Analysis: Identify and categorize error types
  • Trend Analysis: Performance trends over time

Optimization Recommendations

  • Cold Start Optimization: Provisioned concurrency, package size, initialization
  • Memory Right-sizing: Optimal memory allocation based on usage patterns
  • Cost Optimization: ARM architecture, duration optimization, resource efficiency
  • Performance Tuning: Code optimization, connection pooling, caching strategies

Comparative Analysis

  • Multi-function Comparison: Compare performance across multiple Lambda functions
  • Benchmarking: Identify best and worst performers
  • Resource Utilization: Compare memory, duration, and cost metrics

Installation

  1. Clone the repository:
git clone <repository-url> cd lambda-performance-mcp-nodejs
  1. Install dependencies:
npm install
  1. Configure environment:
cp .env.example .env # Edit .env with your AWS credentials and configuration
  1. Set up AWS credentials:
# Option 1: Environment variables export AWS_ACCESS_KEY_ID=your_access_key export AWS_SECRET_ACCESS_KEY=your_secret_key export AWS_REGION=us-east-1 # Option 2: AWS CLI profile aws configure --profile lambda-analyzer export AWS_PROFILE=lambda-analyzer # Option 3: IAM roles (for EC2/Lambda execution)

Required AWS Permissions

The MCP server requires the following AWS permissions:

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "lambda:ListFunctions", "lambda:GetFunction", "lambda:GetFunctionConfiguration", "cloudwatch:GetMetricStatistics", "cloudwatch:GetMetricData", "logs:FilterLogEvents", "logs:DescribeLogGroups", "logs:DescribeLogStreams" ], "Resource": "*" } ] }

Usage

Running the MCP Server

# Start the server npm start # Development mode with auto-reload npm run dev

Available Tools

1. Analyze Lambda Performance
{ "name": "analyze_lambda_performance", "arguments": { "functionName": "my-lambda-function", "timeRange": "24h", "includeDetails": true } }
2. Track Cold Starts
{ "name": "track_cold_starts", "arguments": { "functionName": "my-lambda-function", "timeRange": "24h" } }
3. Get Optimization Recommendations
{ "name": "get_optimization_recommendations", "arguments": { "functionName": "my-lambda-function", "analysisType": "all" } }
4. Compare Lambda Performance
{ "name": "compare_lambda_performance", "arguments": { "functionNames": ["function-1", "function-2", "function-3"], "timeRange": "24h", "metrics": ["duration", "cold-starts", "errors", "cost"] } }
5. List Lambda Functions
{ "name": "list_lambda_functions", "arguments": { "runtime": "nodejs18.x", "includeMetrics": true } }
6. Analyze Memory Utilization
{ "name": "analyze_memory_utilization", "arguments": { "functionName": "my-lambda-function", "timeRange": "24h" } }
7. Get Cost Analysis
{ "name": "get_cost_analysis", "arguments": { "functionName": "my-lambda-function", "timeRange": "30d" } }
8. Monitor Real-time Performance
{ "name": "monitor_real_time_performance", "arguments": { "functionName": "my-lambda-function", "duration": 5 } }

Configuration with MCP Clients

To use this MCP server with MCP clients, add it to your MCP configuration:

Workspace Configuration (.mcp/settings/mcp.json)

{ "mcpServers": { "lambda-performance": { "command": "node", "args": ["path/to/lambda-performance-mcp-nodejs/index.js"], "env": { "AWS_REGION": "us-east-1", "AWS_ACCESS_KEY_ID": "your_access_key", "AWS_SECRET_ACCESS_KEY": "your_secret_key" }, "disabled": false, "autoApprove": [ "list_lambda_functions", "analyze_lambda_performance", "track_cold_starts" ] } } }

Global Configuration (~/.mcp/settings/mcp.json)

{ "mcpServers": { "lambda-performance": { "command": "node", "args": ["path/to/lambda-performance-mcp-nodejs/index.js"], "env": { "AWS_PROFILE": "default" }, "disabled": false } } }

Key Features Explained

Cold Start Analysis

  • Pattern Detection: Identifies when and why cold starts occur
  • Duration Analysis: Tracks initialization times and optimization opportunities
  • Trigger Identification: Determines what causes cold starts (idle time, scaling, deployments)
  • Timeline Visualization: Shows cold start frequency over time

Performance Optimization

  • Memory Right-sizing: Analyzes actual memory usage vs. allocated memory
  • Duration Optimization: Identifies performance bottlenecks and optimization opportunities
  • Cost Optimization: Provides recommendations to reduce Lambda costs
  • Architecture Recommendations: Suggests ARM vs x86 based on workload compatibility

Real-time Monitoring

  • Live Metrics: Current invocation rates, duration, and error rates
  • Performance Alerts: Automatic detection of performance issues
  • Activity Tracking: Recent invocation history and patterns

Example Outputs

Performance Analysis

# Lambda Performance Analysis: my-function ## Summary - **Total Invocations**: 15,432 - **Average Duration**: 245ms - **Cold Start Rate**: 12.3% - **Error Rate**: 0.8% - **Memory Utilization**: 67% ## Performance Metrics - **P50 Duration**: 180ms - **P95 Duration**: 450ms - **P99 Duration**: 890ms - **Max Duration**: 1,200ms ## Cold Start Analysis - **Total Cold Starts**: 1,898 - **Average Cold Start Duration**: 1,200ms - **Cold Start Pattern**: Moderate frequency during low traffic

Optimization Recommendations

# Optimization Recommendations: my-function ## Priority Recommendations 1. **Right-size Memory Allocation** (Impact: High) - Current memory is over-provisioned - Implementation: Reduce memory from 512MB to 256MB - Expected Improvement: Reduce costs by 25% 2. **Optimize Cold Start Performance** (Impact: High) - High cold start rate detected - Implementation: Implement provisioned concurrency for 2-3 instances - Expected Improvement: Reduce cold starts by 85%

Troubleshooting

Common Issues

  1. Permission Errors
    • Ensure AWS credentials have required permissions
    • Check CloudWatch Logs access for cold start analysis
  2. No Data Available
    • Verify function name is correct
    • Check if function has been invoked in the specified time range
    • Ensure CloudWatch logging is enabled
  3. Connection Timeouts
    • Check AWS region configuration
    • Verify network connectivity to AWS services

Debug Mode

# Enable debug logging export LOG_LEVEL=debug npm start

Contributing

  1. Fork the repository
  2. Create a feature branch
  3. Make your changes
  4. Add tests if applicable
  5. Submit a pull request

Support

For issues and questions:

  • Check the troubleshooting section
  • Review AWS permissions
  • Verify environment configuration
  • Check CloudWatch Logs for detailed error messages
Deploy Server
-
security - not tested
F
license - not found
-
quality - not tested

remote-capable server

The server can be hosted and run remotely because it primarily relies on remote services or has no dependency on the local environment.

Enables comprehensive analysis of AWS Lambda performance including cold start tracking, memory utilization monitoring, cost analysis, and optimization recommendations. Provides real-time metrics, comparative analysis across multiple functions, and actionable insights to improve Lambda performance and reduce costs.

  1. Features
    1. Performance Analysis
    2. Advanced Analytics
    3. Optimization Recommendations
    4. Comparative Analysis
  2. Installation
    1. Required AWS Permissions
      1. Usage
        1. Running the MCP Server
        2. Available Tools
      2. Configuration with MCP Clients
        1. Workspace Configuration (.mcp/settings/mcp.json)
        2. Global Configuration (~/.mcp/settings/mcp.json)
      3. Key Features Explained
        1. Cold Start Analysis
        2. Performance Optimization
        3. Real-time Monitoring
      4. Example Outputs
        1. Performance Analysis
        2. Optimization Recommendations
      5. Troubleshooting
        1. Common Issues
        2. Debug Mode
      6. Contributing
        1. Support

          Related MCP Servers

          • A
            security
            A
            license
            A
            quality
            Enables AI models to interact with AWS Lambda functions via the MCP protocol, allowing access to private resources, real-time data, and custom computation in a secure environment.
            Last updated -
            2
            108
            MIT License
            • Linux
            • Apple
          • A
            security
            A
            license
            A
            quality
            A command-line interface and API that allows users to analyze and visualize AWS cloud spending data by enabling Claude to query AWS Cost Explorer through natural language conversations.
            Last updated -
            4
            122
            MIT License
            • Linux
            • Apple
          • A
            security
            A
            license
            A
            quality
            A server that enables LLMs like Claude to query AWS DynamoDB databases through natural language requests, supporting table management, data querying, and schema analysis.
            Last updated -
            7
            29
            MIT License
            • Apple
          • -
            security
            A
            license
            -
            quality
            A Node.js package providing Model Context Protocol server infrastructure for AWS Lambda functions with streaming response capabilities through Server-Sent Events.
            Last updated -
            112
            12
            MIT License

          View all related MCP servers

          MCP directory API

          We provide all the information about MCP servers via our MCP API.

          curl -X GET 'https://glama.ai/api/mcp/v1/servers/jghidalgo/lambda-performance-mcp-nodejs'

          If you have feedback or need assistance with the MCP directory API, please join our Discord server