To set up error monitoring with Claude Code, paste one line into Claude Code in your project: "Read fixter.dev/llms.txt and set up Fixter." It connects Fixter's MCP server, adds standard OpenTelemetry to your app and gets your key. Deploy, and errors arrive as deduplicated issues you can query from Claude Code. Or set four environment variables by hand.
Already on Sentry or Datadog? Both ship an official Claude Code plugin that connects their MCP server, so install that one instead.11,13
This guide is for the case where you have no error monitoring yet. Fixter is our product: Fixter finds and fixes the issues in your app in production, from your coding agent: errors, failing infrastructure, slow requests and downtime. It finds the root cause and fixes it: in your agent over MCP, or as a pull request ready for your review. Nothing to learn, built for small teams. Every step below is checked against our docs and the Claude Code and OpenTelemetry docs on October 28, 2026.
Two ways to set it up
Both routes end in the same place: your app sends logs, traces and metrics to Fixter over standard OpenTelemetry, and Claude Code can read them over MCP. There is no Fixter SDK in either.4 The prompt route lets Claude Code do the wiring. The manual route is for when you want to see every line, or have no coding agent.
| One prompt | By hand | |
|---|---|---|
| What you do | Paste one line, sign in, paste the slash commands it shows you | Create a key, add OpenTelemetry instrumentation, set four env vars |
| What Claude Code does | Connects the MCP server, detects your stack, adds packages and env vars, gets the key | Nothing, unless you ask it to |
| The API key | A one-time link you open in the browser | Created under Settings > API keys, shown once |
| Works from | Claude Code, Cursor, Codex or any MCP client | Any app with an OpenTelemetry SDK |
| Querying over MCP | Connected as step one | One extra command at the end |
From Fixter's llms.txt and onboarding docs, October 28, 2026.1,2
Set up error monitoring from one prompt
The prompt points Claude Code at fixter.dev/llms.txt, a plain text file that lists the setup steps for every coding agent.1 This is what happens in Claude Code.
- Have an account. If you have no Fixter account yet, sign up first. The Free plan needs no card.10
- Paste the prompt. Open Claude Code in the repository of the service you want to watch and paste:
- Sign in. Claude Code registers Fixter's MCP server at mcp.fixter.dev. Signing in is a browser step an agent cannot do for you, so it asks you to run
/mcp.1 These are the same two commands if you want to run them yourself:3To give your whole team the server, commit it in.mcp.jsonat the repository root instead.1,3 - Paste the commands it shows you. In Claude Code the setup runs through Fixter's plugin, and slash commands are something only you can paste, one per message.1 The last one detects your stack, adds the OpenTelemetry packages and environment variables, and hands you the API key as a one-time link.2
- Deploy and check. Redeploy so the new environment variables are live, wait two or three minutes, then ask for each signal by name. Traces can arrive while logs never do, and a single "is it working?" hides that.2
On Cursor or Codex the prompt is the same. The agent connects the server, then follows the OpenTelemetry page and fetches your key link with the get_ingestion_credentials tool instead of using a plugin.1
Set it up by hand with OpenTelemetry
The manual route is standard OpenTelemetry, so nothing here is specific to Fixter except the endpoint and the key.4
- Create an API key under Settings > API keys in the Fixter app. It is shown once, so copy it into wherever you keep secrets.4
- Add your language's OpenTelemetry instrumentation. Auto-instrumentation covers frameworks, databases and outbound calls without code changes:4Go, Ruby, .NET, Rust and PHP follow their own OpenTelemetry guide; every official SDK reads the same variables.4
- Set four environment variables wherever your deploy defines its environment: a
.envloader, Dockerenvironment:, a Kubernetes Deployment'senv:block, an ECS task definition.4 The first sets your service name, the other three are the standard OTLP exporter settings.5,6 Fixter takes OTLP over HTTP, not gRPC. - Make sure your errors reach a log or a span. Fixter builds issues from records in your logs and traces that carry an error.7 Traces come with the instrumentation; logs need your logging library bridged. On Node that means Winston, Pino or Bunyan, since plain
console.logexports nothing. Java's agent bridges logback and log4j2 on its own.4 - Deploy, then connect Claude Code with the two commands from step 3 of the prompt route, so you can query what arrives.3
Already running an OpenTelemetry Collector, or on Kubernetes? One exporter block on the Collector, or Fixter's Helm chart, covers every service at once. Both are on the OpenTelemetry setup page.4
What happens after setup
After setup, Fixter groups your errors into issues, tells you about new ones by email (and in Slack once you connect it), and Claude Code can query all of it over MCP. There is nothing more to configure: it runs on the data you are now sending.
Errors become issues, without duplicates
Fixter parses each error's stack trace and groups every occurrence with the same root cause into one issue, with a count, the frame that threw, the service, and when it was first and last seen. An error thrown 3,412 times is one row, not 3,412. Values that change on every occurrence, such as ids, timestamps and hostnames, do not split an issue: Order 8f2c1a not found and Order b31e07 not found are one issue with a count of two.7
Errors without a stack trace count too: database errors written to a log line, failed calls to a model provider, an agent that stopped early. Each issue gets a status (New, Ongoing, Regressed, Resolved, Suppressed), and an issue you resolved that comes back tells you so.7 More on the approach in monitoring errors in production.
Alerts by email or Slack
Every workspace starts with an email channel for all active users, so new issues and alerts reach you before you connect anything. Only new issues are announced, so the backlog you already had does not land as a wall of messages, and a burst of new ones collapses into one message.7,8
Fixter's own detectors also alert on error bursts, worsening latency and anomalies, with no rule from you.8 For Slack, connect your workspace under Settings > Integrations, invite the bot to a channel, and route the issue tracking source there; new issues stay on email until you do.7,8 Your own alert rules come later, once there is a day of data to calibrate against, and you can write them by asking Claude Code.2
Query your errors from Claude Code
With the MCP server connected, Claude Code can list and open issues, search logs, follow a trace, run read-only SQL over your telemetry, and manage alert rules.9 You ask in plain language:
Because Claude Code has your code open, it can read the stack trace against the actual file and propose the fix in the same session. You review it and decide. On the paid plans, Fixter also investigates each new issue as it arrives and writes a root cause onto it, which Claude Code reads with the issue.7,10 For more ways to use your logs this way, see how to connect Claude Code to your logs.
If errors do not show up
- Nothing arrives at all. The service has to be redeployed with the variables in place. Check that the endpoint is
https://ingest.fixter.devand the key is set in the process's own environment.2 - A 401 in the exporter logs. The Authorization header is not reaching Fixter, or the key was revoked. The value is
Authorization=Bearerplus the key.4 - Exporter errors about gRPC. Set
OTEL_EXPORTER_OTLP_PROTOCOL=http/protobuf.4 - Traces but no logs on Node. The app uses ES modules and was started with
--require, or it logs throughconsole.log. Use the--importloader and Winston, Pino or Bunyan.4 - Claude Code says the MCP server is not connected. Add the server, restart Claude Code, and sign in with
/mcp.2 - The plugin command does not exist. Run
/reload-pluginsor restart Claude Code.2
Key takeaways
- One prompt in Claude Code sets up Fixter: "Read fixter.dev/llms.txt and set up Fixter."
- By hand it is standard OpenTelemetry: instrumentation plus four environment variables, no SDK of ours
- Errors are grouped into issues by root cause, so a repeat is a count, not a new alert
- New issues reach you by email from day one, and in Slack once you route them there
- Claude Code queries issues, logs and traces over MCP and fixes the code in the same session
- Already on Sentry or Datadog? Install their official Claude Code plugin instead. For the comparison, see Datadog MCP vs Sentry MCP and 10 monitoring MCP servers
Frequently asked questions
Can Claude Code set up error monitoring for me?
Yes. Paste "Read fixter.dev/llms.txt and set up Fixter." into Claude Code in your project. It connects Fixter's MCP server, adds standard OpenTelemetry to your app and gets you an API key through a one-time link. You do two things yourself: sign in with /mcp, and paste the slash commands it shows you, because an agent cannot run those.
Do I need an error-reporting SDK?
Not with Fixter. Errors are read from the logs and traces your app already sends over standard OpenTelemetry, so there is no Fixter SDK and no separate error endpoint. If you set it up by hand, it is your language's OpenTelemetry instrumentation plus four environment variables.
Do Sentry and Datadog work with Claude Code?
Yes. Both ship an official Claude Code plugin that connects their hosted MCP server. Sentry's installs with /plugins install sentry@claude-plugins-official, and Datadog's, still in preview, with /plugin install datadog@claude-plugins-official. If your errors already go to one of them, install that plugin.
Why do I see traces but no errors from my logs?
Your logging library is probably not bridged to OpenTelemetry. On Node, auto-instrumentation exports logs only from Winston, Pino or Bunyan, so plain console.log sends nothing, and an ES modules app started with --require gets traces but no logs. Python needs the logging instrumentation, Java's agent bridges logback and log4j2 on its own.
How do I get alerted about new errors?
By email from day one: every workspace has an email channel for all active users, and new issues start out going there. Connect Slack under Settings > Integrations, invite the bot to a channel, and route the issue tracking source to it if you want new issues in Slack too.
Is error monitoring with Fixter free?
The Free plan includes issue tracking, 10 GB of telemetry a month, 5 alert rules and querying over MCP from Claude Code, with no card. Automatic investigations of new issues come with the paid plans, which start at €20 a month.
Comparing tools first? See error tracking for small teams.
Sources (13), all checked October 28, 2026
- Fixter, llms.txt (what the setup prompt tells your agent to do)
- Fixter docs, Onboarding
- Claude Code docs, Connect Claude Code to tools via MCP (claude mcp add, /mcp sign-in, .mcp.json)
- Fixter docs, Send data with OpenTelemetry (four env vars, per-language setup, log bridges)
- OpenTelemetry specification, OTLP exporter configuration
- OpenTelemetry specification, SDK environment variables (OTEL_SERVICE_NAME)
- Fixter docs, Issues (grouping, statuses, announcements, investigations)
- Fixter docs, Alerts (detectors, email and Slack delivery, routing)
- Fixter docs, MCP tools reference
- Fixter pricing
- Sentry, official Claude Code plugin
- Sentry MCP (hosted server, OAuth)
- Datadog, Claude Code plugin repository (preview, requirements)