概览
What is CloudWatch Logs MCP Server?
CloudWatch Logs MCP Server is a Model Context Protocol (MCP) server that provides tools for accessing AWS CloudWatch logs. It allows AI assistants, such as Claude Desktop, to list log groups and read log entries from AWS CloudWatch using the boto3 library.
How to use CloudWatch Logs MCP Server?
Configure AWS credentials via environment variables (AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY) or the AWS CLI. Then add the server to your Claude Desktop configuration (claude_desktop_config.json) using either a Python command or a Docker container. The server exposes two tools: list_groups and get_logs.
Key features of CloudWatch Logs MCP Server
- List available CloudWatch log groups with optional prefix.
- Read log entries from a specific log group.
- Filter logs by time (ISO or relative "5m", "1h", "1d"), log stream, and filter pattern.
- Support overriding AWS region and credentials per tool call.
- Returns JSON output with log group details or log events.
Use cases of CloudWatch Logs MCP Server
- Troubleshoot application issues by querying recent CloudWatch logs.
- Monitor log groups and streams from an AI assistant.
- Automate inspection of log errors with natural language queries.
- Quickly retrieve log entries without leaving the chat interface.
FAQ from CloudWatch Logs MCP Server
What AWS credentials are required?
The server needs AWS_ACCESS_KEY_ID and AWS_SECRET_ACCESS_KEY environment variables, or can use the default AWS CLI profile. Optionally, each tool call can pass its own credentials.
How do I run the server with Docker?
Use the Docker command in your claude_desktop_config.json with the image mcp/cloudwatch-logs, passing the AWS credentials as environment variables.
What tools does this server provide?
Two tools: list_groups (list log groups) and get_logs (read logs from a specific log group). Both accept optional AWS region and credentials.
Can I filter the logs returned?
Yes. get_logs supports logStreamName, startTime, endTime (ISO or relative), and filterPattern as optional parameters.
What is the output format?
Both tools return JSON strings: list_groups returns log group names, creation times, and stored bytes; get_logs returns log events with timestamps, messages, and log stream names.