Encore, the CloudWatch MCP server, Google Cloud's Logging and Monitoring MCP servers, Datadog, Sentry and Grafana compared for AI agents that read logs, traces and alarms on AWS and GCP.
This guide compares MCP servers for debugging production apps on AWS and GCP. For servers that manage cloud resources, see the cloud platform MCP servers guide.
An agent debugging production through MCP is only as good as the evidence it can pull. With logs alone, it searches for an error string and guesses at the request that caused it. With traces, it follows one request through each service, query and message, and can reproduce the same call locally. The servers below differ less in what they can read than in how much of a single request they let the agent follow.
The second thing that differs is what else the server can do. A debugging session should read, and a server that can also edit dashboards or deploy belongs in a different session.
What a debugging MCP server needs to give an agent:
Encore is an open source infrastructure SDK for TypeScript and Go that declares infrastructure in the application code, and traces requests, Pub/Sub messages and database queries by default. Its MCP servers expose that data for one application, locally and in deployed environments on AWS or GCP, without any tracing setup in the code.

import { api } from "encore.dev/api";
import { SQLDatabase } from "encore.dev/storage/sqldb";
// Every call to this endpoint is traced, including the query below.
const db = new SQLDatabase("notes", { migrations: "./migrations" });
export const addNote = api(
{ expose: true, method: "POST", path: "/notes" },
async ({ text }: { text: string }): Promise<{ id: number }> => {
const row = await db.queryRow<{ id: number }>`
INSERT INTO notes (text) VALUES (${text}) RETURNING id`;
return { id: row!.id };
},
);
When addNote fails in production, the agent reads the trace with the request, the SQL query and its timing. It can then run the app locally with encore run, call the same endpoint and compare the local trace. Connecting both servers takes two commands:
That pairing is what the other servers lack: the production trace and a local run with the same tool names. The cloud MCP server gives production traces and deployment status, and the local MCP server adds tools such as get_traces and call_endpoint. Distributed tracing is built into the framework, AI integration covers the skills that go with the servers, and the app deploys to your own AWS or GCP account.
encore run. The same bucket declaration is used in preview environments and production.It covers Encore apps only, and does not read logs from other services in the same account. The cloud MCP server reads data and does not change infrastructure.
Run in your terminal to get started locally.
The AWS Labs CloudWatch MCP server runs with uvx awslabs.cloudwatch-mcp-server@latest and the profile in AWS_PROFILE. Its tools include execute_log_insights_query, get_metric_data, analyze_metric, analyze_log_group, get_active_alarms and get_alarm_history, and the permissions it needs are read-type.
It works for anything that logs to CloudWatch, which makes it the default for mixed AWS estates. The agent follows a request through log lines rather than spans, and each Logs Insights query bills per GB scanned, so narrow the log group and time range.
Google hosts a Cloud Logging MCP endpoint at logging.googleapis.com/mcp, with tools such as list_log_entries, list_log_names and list_buckets, alongside Cloud Monitoring tools. Access follows the caller's IAM roles in the project, so the roles granted to the identity decide what the session can do. Like CloudWatch, it reads logs and metrics rather than following a request.
Datadog's MCP Server, generally available since March 2026, exposes logs, metrics, traces and monitors from your Datadog org, with access following Datadog permissions. For teams already sending APM data to Datadog, it is the most complete view of a request across services, and the quality depends on the instrumentation you maintain.
Sentry's hosted server at mcp.sentry.dev uses OAuth, and the URL can be scoped to one org and project with /mcp/org/project. In Claude Code it is added with claude mcp add --transport http sentry. It starts from errors and issues, with traces and logs attached, and offers Seer, Sentry's own root-cause analysis, as a tool.
Good to know: scoping the URL to the one project you are debugging keeps issues from other projects out of the agent's context.
The Grafana server runs with uvx mcp-grafana, GRAFANA_URL and GRAFANA_SERVICE_ACCOUNT_TOKEN, and needs Grafana 9.0 or later. It queries Prometheus and Loki and includes tools that update dashboards, which --enabled-tools can leave out of a debugging session.
The best server is usually the one that reads the data you already collect. A team on CloudWatch gets more from the CloudWatch server today than from a new vendor, and a team with Datadog APM already has traces the agent can follow. What changes the agent's results most is whether the data shows one request end to end. If it does not, the agent spends its context on search queries and guesses at correlation, and every answer needs a human to confirm it.
Two sessions are better than one. Keep a debugging session with read-only servers and no infrastructure credentials, and do fixes in a separate session that pushes code through review.
The MCP specification defines tools as model-controlled actions and recommends a human in the loop for sensitive calls, and its authorization spec sets out OAuth for hosted servers. Google's SRE book on monitoring distributed systems is a good guide to which signals answer which questions, and OpenTelemetry's trace concepts explain why spans beat log lines for following one request.
The open source CloudWatch MCP server from AWS Labs runs Logs Insights queries with execute_log_insights_query and reads alarms with get_active_alarms and get_alarm_history, using the AWS credentials on the machine.
Yes. Datadog, Sentry, Grafana and Google Cloud offer MCP servers for logs, traces and errors. For Encore apps, the cloud MCP server at api.encore.dev/mcp gives traces and deploy status for deployed environments with OAuth or an API key.
Run claude mcp add --transport http encore https://api.encore.dev/mcp and complete the OAuth flow. Locally, encore mcp start serves get_traces and get_trace_spans for the app running with encore run.
Deploy to your cloud on AWS and Google Cloud
without managing infrastructure
Encore lets developers and agents define application infrastructure directly in code, then automatically provisions it from local development to production in your AWS or GCP account.