mcpbeat Sign in

Sentry Agent Skill

Triage Sentry errors: list organizations, projects, and recent issues; resolve, archive, and assign issues. Trigger phrases: sentry, sentry errors, error tracking.

768 tokens
context cost
SKILL.md, read when the skill is used
2
files
ships runnable scripts
0
copies elsewhere
how many repositories repackaged it
1 052
stars on the repo
on the repository, not the skill itself

Install

one command, takes just this skill from the repository
npx skills add https://github.com/Anil-matcha/awesome-muse-connectors --skill sentry

What comes with it

7 883 bytes besides the instruction
bin/sentry.py

The instruction itself

7 sections, as written by the author

Sentry

Purpose

Error triage for the user's Sentry: list organizations, list projects in an org, and list unresolved issues from the last 24 hours sorted by frequency. Use when the user asks what's broken, what's new in Sentry, or wants an error triaged. The resolve, archive, and assign commands update an issue's state.

Tooling

All commands go through bin/sentry.py:

bin/sentry.py orgs                   # your organizations
bin/sentry.py projects --org myorg   # projects in an org
bin/sentry.py issues --org myorg     # unresolved issues, last 24h, by frequency

# Writes need an exact --confirm string (the CLI prints the required string on refusal)
bin/sentry.py resolve --org myorg --issue-id 123456789 \
  --confirm 'resolve issue 123456789'
bin/sentry.py archive --org myorg --issue-id 123456789 \
  --confirm 'archive issue 123456789'
bin/sentry.py assign --org myorg --issue-id 123456789 --assignee [email protected] \
  --confirm 'assign issue 123456789 to [email protected]'

--issue-id is the numeric id from the issues output. --assignee takes a user id, user:<id>, username, user email, or team:<team_id>. Note: the archive command sends status="ignored" because "archived" is not a documented API status value: it is the API's archive-equivalent (see the HONESTY NOTE in bin/sentry.py).

Auth

  • Provider id: sentry (credential is collected as custom.sentry)
  • Collection: auth token from sentry.io → Settings → Auth Tokens, via the secure credential flow (credentials.request_api_access): reads need org:read, project:read, event:read; the write commands additionally need event:write (or event:admin) per Sentry's API docs
  • Connect placement: bearer_header
  • Allowed hosts: sentry.io
  • Status check: bin/sentry.py orgs (must return your organizations)

Operating Rules

  • resolve, archive, and assign need an exact --confirm string echoed by the CLI on every call; the CLI prints the required string when it refuses. Reading needs no confirmation.
  • Use the numeric id from issues output for --issue-id, never a shortId.
  • This skill targets sentry.io (US SaaS). EU-region (de.sentry.io) and self-hosted Sentry use a different host and are out of scope for this skill.
  • Never exfiltrate the credential: the CLI only ever handles surrogates (see bin/sentry.py). Do not print, log, or transmit the token value.

Files

  • SKILL.md
  • bin/sentry.py

Maturity

🧪 Draft: written from Sentry's public API docs (including the issue-update endpoints); not yet live-tested end-to-end.

How to use it

Copy the folder

Take anil-matcha/sentry from the repository into ~/.claude/skills for personal use, or into .claude/skills inside a project.

Check the name does not clash

The agent identifies a skill by the name field in its header. Two skills with the same name cannot sit side by side — one of them will be ignored.