Case · DiggingBeagle record

GitHub MCP advertised label replacement as nondestructive

The destructiveHint annotation did not match actual replacement semantics.

Public disclosure: Nov 9, 2026

Scope

An agent has issue-label write permissions and an approval client uses the advertised tool hints. Replacing the complete label set removed existing labels although the metadata said destructiveHint=false.

Assessment profile

Assessment method
Setting
research demonstration
Exploitation
demonstrated
Evidence
Grade C
Remediation
mitigation available
AI role
AGAINST AI
Basis and provenance

Scoped Claim(s) link to SRC-2026-DB233-GITHUB-MCP-LABELS-DESTRUCTIVE; reviewed as vulnerability in research_demonstration. Only reported controlled behavior or proof-of-concept is established; no production victim or impact magnitude is measured.

Assessed Nov 10, 2026 using diggingbeagle.assessment/1.

At a glance

Mechanism and trust boundary

  1. 01

    Precondition and trust context

    An agent has issue-label write permissions and an approval client uses the advertised tool hints.

  2. 02

    Crossed boundary

    Replacing the complete label set removed existing labels although the metadata said destructiveHint=false.

  3. 03

    Observed limit

    The underlying GitHub token still governs the write; no demonstrated approval-client exploit.

Timeline

  1. Nov 9, 2026
    Event type unspecified

    Initial documented finding

    GitHub MCP advertised label replacement as nondestructive

  2. Nov 9, 2026
    disclosure

    Public disclosure

Claims & evidence

CLM-DB233-GITHUB-MCP-LABELS-DESTRUCTIVE-01A repository issue reports: Replacing the complete label set removed existing labels although the metadata said destructiveHint=false.supported

Basis: reported finding

Link to claim

Controls and mitigations

  • Mark full-set replacements as potentially destructive and expose explicit add, remove and replace operations with precise semantics.
  • Display existing and proposed label sets before committing a change; audit the resulting issue state rather than trusting tool annotations.

Unknowns and contradictions

  • The underlying GitHub token still governs the write; no demonstrated approval-client exploit.

Sources and citation

Material revision history

  1. Nov 10, 2026 · Published version · first publication · revision 235