mcp server
openfault
Self-hosted, Sentry-compatible error tracker. One container, SQLite, MCP-first.
Set up
Hosted by its author. Add the URL to your agent — nothing to install.
Settings → Connectors → Add custom connector
Name: openfault
URL: https://{host}/mcpsame format Cursor, GitHub Copilot CLI, Junie, JetBrains AI Assistant, Augment (Auggie CLI), Factory Droid, Kiro, Devin CLI +12
Values in angle brackets are placeholders. Restart Claude Desktop after editing its config.Claude Desktop docs
README
synced Nov 8, 2026Early development. Not ready for production yet.
Why
- Your errors, your server. One container, SQLite inside, under 100 MB of RAM.
- Drop-in for Sentry. Keep your SDK. Change the DSN.
- MCP-first. Coding agents read and triage issues through the same handlers the UI uses.
Quick start
docker run -d --name openfault -p 8080:8080 -v openfault-data:/data ghcr.io/openfault/openfault:latest
Or docker compose up -d with the docker-compose.yml in this repo.
Open http://localhost:8080. A short wizard creates your organization, owner and first project, and hands you a DSN. Swap it into your Sentry SDK. Done.
In production, put it behind HTTPS and set OPENFAULT_BASE_URL. Upgrades are pull and restart.
Features
- Sentry SDK ingest, live issues, releases and breadcrumbs.
- MCP server for Claude Code, Cursor and friends.
- Alerts by email, Slack, Discord, Teams and more.
- iOS push through a relay: hosted, or your own.
- Daily S3 or Cloudflare R2 backups.
Configuration, env vars and the full guide live at openfault.dev.
iOS crash symbolication
Upload dSYMs and native sentry-cocoa crashes resolve to function, file and line. Add a Run Script build phase (Release), with a write API token from Settings:
cd "$DWARF_DSYM_FOLDER_PATH" && for d in *.dSYM; do
zip -qr "/tmp/$d.zip" "$d"
curl -fsS -H "Authorization: Bearer $OPENFAULT_TOKEN" -F "file=@/tmp/$d.zip" \
"https://errors.example.com/api/0/projects/<org>/<project-slug>/files/dsyms/"
done
One dSYM per request keeps each upload under the 20 MiB request cap. See and delete uploads under Settings → Projects → your project → Debug files.
Already on Sentry's tooling? sentry-cli uploads chunked (no size cap per dSYM); Mach-O only, sources are not stored, so leave off --include-sources:
SENTRY_URL=https://errors.example.com SENTRY_ORG=<org> SENTRY_PROJECT=<project-slug> SENTRY_AUTH_TOKEN=$OPENFAULT_TOKEN sentry-cli debug-files upload "$DWARF_DSYM_FOLDER_PATH"
iOS app
Coming soon to the App Store. Triage from your phone, with push alerts and Home Screen widgets. Pair it from Settings → Devices.
Roadmap and feedback
See what's next on the roadmap. Ideas, bugs, rough edges: tell us on the feedback board.
Contributing
Pull requests are welcome. Small ones merge fast. Start with CONTRIBUTING.md, and DEVELOPMENT.md gets you running locally.
Sponsors
License
MIT. See LICENSE.