github / github/github-mcp-server

Optional "Receipt Required" guard for destructive tools (delete_repo, permissions)

Open
#2,761 2 comments 0 reactions 0 assignees View on GitHub
enhancement
Dominant language
Go
Stars
33k
Forks
5k
Avg merge
2d 1h
Merged PRs (30d)
52

Description

This server exposes irreversible tools (`delete_repository`, visibility/permission changes). I maintain EMILIA's open **Receipt Required** rail (Apache-2.0): a small, **opt-in** gate so an irreversible tool refuses to run unless a named human signed an authorization receipt for that *exact* action.

The four-step behavior (CI-verified):
- missing receipt → `428 Receipt Required`
- valid, action-bound receipt → runs
- same receipt replayed → refused (one-time consumption)
- forged receipt → refused

It's **disabled by default, no protocol lock-in** — purely additive. There's a runnable `github-admin` example mirroring `delete_repo`, plus a 10-minute guide. Would you be open to a PR adding this behind an opt-in flag? Happy to author it.

Spec + guide: https://github.com/emiliaprotocol/emilia-protocol/blob/main/docs/guides/RECEIPT-REQUIRED-MCP.md

Contributor guide

Open the contributing guide

Research direction

Read the linked RECEIPT-REQUIRED-MCP.md guide and inspect the existing delete_repository, visibility, and permission tool entry points in github-mcp-server. Compare the proposed github-admin example with the server’s current tool behavior; done means an opt-in, additive guard that rejects missing, replayed, or forged receipts while allowing valid action-bound receipts.

Written by the indexing model from the issue text.

Assessment

Tech stack
github, go
Domain
api, authorization, security
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Active
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.